关于java:为什么main方法应该是静态的

Why the main method should be in static

本问题已经有最佳答案,请猛点这里访问。

下面的代码给出了错误,因为我没有将静态关键字放在主方法中。请解释为什么没有静态关键字的主方法不能工作。

1
2
3
4
5
6
7
8
9
public class Test {
public void main(String args[]) {
    try {
        int a = new Integer(10);
        System.out.println(a);
    } catch (Exception e) {
        System.out.println(e);
    }
}

}

Error:主方法在类测试中不是静态的,请将主方法定义为:公共静态void main(string[]参数)


由于主方法是staticJava virtual Machine可以调用它而不创建包含主方法的类的任何instance

如果主方法没有比EDCOX1声明静态,则必须创建main Class的实例,并且由于构造函数可以重载并且可以有参数,所以在EDCOX1 3中找不到任何和一致的方法来找到Java中的主方法。

另外,请参阅此部分,了解详细且解释得很好的答案。