我以为这是一件小事,但是我似乎找不到与class_existsJava 类似的方法。我正在编写测试以验证是否定义了类名。如何使用jUnit在Java中复制它?
<?php
$this->assertTrue(class_exists('Car'), 'Should have a class called "Car"');
Run Code Online (Sandbox Code Playgroud)
TestCar.java
import org.junit.Assert;
import org.junit.Test;
public class TestCar {
@Test
public void testCarExists() {
try {
Class.forName("Car");
} catch(ClassNotFoundException e) {
Assert.fail("Should create a class called 'Car'.");
}
}
}
Run Code Online (Sandbox Code Playgroud)
汽车.java
public class Car {
// just enough :-)
}
Run Code Online (Sandbox Code Playgroud)
Java的一个优点是您拥有一个编译器,因此通常这是一个非问题。如果您正确地编译了代码,然后由于某种原因从运行时环境中删除了所需的jar文件,则会得到一个java.lang.ClassNotFoundException,这样就足够了。
如果您想超级安全,可以尝试致电Class.forName:
@Test
public void testClassExists {
try {
Class.forName("org.mypackage.Car");
} catch (ClassNotFoundException e) {
Assert.fail("should have a class called Car");
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2069 次 |
| 最近记录: |