我可以这样做:
import java.util.ArrayList;
public class Array {
public static void main(String args[]){
ArrayList<String> myList = new ArrayList<String>();
myList.add("S");
}
}
但是我不能这样做:
import java.util.ArrayList;
public class Array {
ArrayList<String> myList = new ArrayList<String>();
myList.add("S");
}
为什么我必须包含主要方法?
答案 0 :(得分:13)
因为Java类由方法和块组成。您不能拥有像
这样的原始语句myList.add("S");
最后,您的应用程序需要一个Entry point,Java虚拟机首先调用JLS-12.1.4. Invoke Test.main
所记录的main()
最后,在完成类
Test
的初始化之后(在此期间可能发生了其他相应的加载,链接和初始化),调用main
的方法Test
。 / p>方法main必须声明为
public
,static
和void
。它必须指定一个形式参数(§8.4.1),其声明类型为String
数组。
答案 1 :(得分:4)
您需要main
因为是程序启动的惯例。程序无法知道某个类是什么或为什么存在,所以只有当你在main
中按照惯例使用它时它才起作用。它是起点。