以下代码给出错误,因为我没有将静态关键字放到main方法中。请解释为什么main方法在没有static关键字的情况下无效。
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:
主要方法在Test类中不是静态的,请将main方法定义为:
public static void main(String [] args)
答案 0 :(得分:2)
由于主要方法static
Java virtual Machine
可以调用它而不创建包含main方法的任何instance
类。
如果main方法没有声明为静态,而JVM
必须创建main Class
的实例,并且因为构造函数可以重载并且可以有参数,所以{{1}不会有任何确定的一致方式在Java中找到main方法。
还可以参考this获取详细且解释清楚的答案。