我有以下简单的代码
public class Tester {
static class TesterChild {
public static void main(String args[]) {
System.out.println("Test");
}
}
}
它编译得很好。但是当我运行它时,我得到以下错误
[aniket@localhost src]$ java Tester
Error: Could not find or load main class Tester
问题是为什么我们不能在静态内部类中定义我们的主要方法?
更新1:
如答案/评论中所述,我已将代码更改为以下
public class Tester {
public static class TesterChild {
public static void main(String args[]) {
System.out.println("Test");
}
}
}
我编译了它,它生成了两个类文件Tester.class
和Tester$TesterChild.class
. 但我仍然收到错误
[aniket@localhost Desktop]$ java Tester$TesterChild
Error: Could not find or load main class Test
更新 2:
好的,现在我在类路径中包含当前目录并执行仍然出现错误
[aniket@localhost Desktop]$ java -cp . Tester$TesterChild
Error: Main method not found in class Tester, please define the main method as:
public static void main(String[] args