芳葬
2016-07-16 21:09:11
首先我先請大神告訴我ArrayList中有幾個重要的方法怎么用。我自己試著去寫了一個添加的方法? ? ??package demo;import java.util.ArrayList;public class Demo1 { private ArrayList<String> notes=new ArrayList<String>(); notes.add("a"); private void add(String s){ notes.add(s); } public static void main(String[] args) { Demo1 demo=new Demo1(); }}為什么我直接輸入 notes.add()這個方法就不能實現呢?必須新建一個函數add在里面使用add函數才好使。求告知。
4 回答
已采納

看風景非凡
TA貢獻9條經驗 獲得超11個贊
我們都知道一個程序的入口是main方法,你想要執行Demo1類當中的代碼,當執行到notes.add("a")時,必須要有Demo1類的實例,即必須先new一個Demo1類的對象出來,你直接寫notes.add(),程序無法編譯,因為編譯到notes.add()的時候并沒有Demo1類的實例,沒有就不能執行這個部分的代碼。所以這種寫法是不行的,而定義一個方法add,然后去調用這個add方法就是可以的了。因為要調用你寫的add方法就必須有Demo1類的實例對象,程序將從入口函數main中開始執行。
你換一種寫法,直接將Demo1中所有的代碼放進main函數里,那么你就可以直接用add()方法,無須新寫一個add方法。

冰山點水
TA貢獻109條經驗 獲得超149個贊
類里面只能有屬性(成員變量),代碼塊,構造器和方法(當然還有內部類),你單獨在類里面寫一行notes.add("a"),編譯器是會報錯的,如果要執行單獨的一行或一段代碼,要么把代碼放在一對{}中作為類里面的代碼塊,要么放在main方法中執行。

Its_forever
TA貢獻361條經驗 獲得超328個贊
public?static?void?main(String[]?args)?{ Demo1?demo=new?Demo1(); demo.notes.add("a"); }
需要在方法里面調用
添加回答
舉報
0/150
提交
取消