为什么需要main方法才能在类中使用arraylist方法?

时间:2014-12-18 18:43:17

标签: java arraylist

我可以这样做:

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");


}

为什么我必须包含主要方法?

2 个答案:

答案 0 :(得分:13)

因为Java类由方法和块组成。您不能拥有像

这样的原始语句
myList.add("S");

最后,您的应用程序需要一个Entry point,Java虚拟机首先调用JLS-12.1.4. Invoke Test.main所记录的main()

  

最后,在完成类Test的初始化之后(在此期间可能发生了其他相应的加载,链接和初始化),调用main的方法Test。 / p>      

方法main必须声明为publicstaticvoid。它必须指定一个形式参数(§8.4.1),其声明类型为String数组。

答案 1 :(得分:4)

您需要main因为是程序启动的惯例。程序无法知道某个类是什么或为什么存在,所以只有当你在main中按照惯例使用它时它才起作用。它是起点。