我已经了解到Java文件中唯一的公共类也必须具有main方法.但是,在下面你可以看到内部类中的main方法而不是?关于源文件中主要方法定义的规则是什么?
public class TestBed {
public TestBed() {
System.out.println("Test bed c'tor");
}
@SuppressWarnings("unused")
private static class Tester {
public static void main(String[] args) {
TestBed tb = new TestBed();
tb.f();
}
}
void f() {
System.out.println("TestBed::f()");
}
}
Run Code Online (Sandbox Code Playgroud)
如果你想用java(Java启动器:java test.MyClass)启动一个类,那么这个类必须有一个带有众所周知签名的main方法.
您可以在任何地方使用具有相同签名的main方法.但是不要指望发射器会找到它.
PS语言的名称是Java,而不是JAVA.
有一个小细节:
你可以这样做:
package test;
public class Test {
/**
* @param args the command line arguments
*/
static public class A {
public static void main(String[] args) {
System.err.println("hi");
}
}
}
Run Code Online (Sandbox Code Playgroud)
java test.Test $ A.
但这是非标准的......