众所周知,Java需要main()在公共类中将方法设为静态才能使其可执行。产生此要求的主要原因是使JVM能够调用main()方法而无需创建对象。这仅表示JVM不会创建包含该main()方法的Main类的对象。为证明这一点,我们可以使包含main方法的Main类作为abstract并且程序仍在运行。
以下示例展示了相同的内容。在这里,我们将主类抽象化了。
abstract public class Tester {
public static void main(String args[]) {
System.out.println("Main");
}
}输出结果
Main