今天得到的,總結一下:對象只有在你需要的時候再實例化,不然會浪費你的內存空間。
看似很基礎,不過又有很多人注意了呢?
給一個很簡單的例子吧。
public class A {
public String getstring = this.getWord();
public String getWord(){
System.out.println("put your word");
String word = null;
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
try {
word = bf.readLine();
} catch (IOException e) {
e.printStackTrace();
}
return word;
}
public void display(){
if(getstring.toLowerCase().startsWith("y")){
System.out.println("null you input");
}else{
System.out.println(getstring);
}
}
public static void main(String [] args){
A a = new A();
A b = new A();
a.display();
}
}
查看用戶是否以y字母輸入,如果是的話就顯示“null you input”。
但當你運行的時候卻要輸入2次,原因是你實例化了2個對象在那。
如果說現在只有一個用戶的話,要他輸入2次是很不現實的問題。
正如上面的,如果變量如果調用的是一個需求空間很大的方法的時候,那樣所消耗的空間是很大的。
如果說你是一個b/s系統的話,而同時訪問的人又很多的話,那樣內存消耗會很大很大。