//: innerclasses/TestBed.java
// Putting test code in a nested class.
// {main: TestBed$Tester}
public class TestBed {
public void f() { System.out.println("f()"); }
public static class Tester {
public static void main(String[] args) {
TestBed t = new TestBed();
t.f();
}
}
} /* Output:
f()
*///:~
我正在学习“用Java思考”。我只是想知道为什么上面的代码不起作用,这应该是测试每个类的一种方法,可以通过删除TestBed $ Tester.class文件将其删除。
错误消息指示在TestBed类中应该有一个公共的静态void main(String [] args)作为程序条目。
java编译版本:javac 1.7.0_40
最佳答案
main
方法必须在公共顶级类中。与Java文件同名。在这里,这是TestBed
类。
当前的main
方法位于内部类(即TestBed$Tester
)中,不能用于启动程序。
编辑:我可能错了。我看过您提到的书,看起来您可以通过编写以下内容来运行Command Promt中的内部类:
java TestBed$Tester
关于java - 嵌套类作为Java中的测试方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26029272/