它是確定如果程序是這樣寫的:實例化沒有變量聲明的對象是否有任何缺點?
class ReduceCode
{
void display()
{
System.out.print("Hello");
}
public static void main(String[] X)
{
new ReduceCode().display();
}
}
,而不是
class ReduceCode
{
void display()
{
System.out.print("Hello");
}
public static void main(String[] X)
{
ReduceCode rc = new ReduceCode();
rc.display();
}
}
我理解具有與參照申報對象背後的原因,所以,如果有任何實例變量涉及,將來可以使用該引用訪問這些變量的值,但對於僅打印某些內容的方法(例如display()
),引用可以被忽略。
除此之外,沒有參考的實例化有什麼缺點?我在官方網站上找不到任何文檔。這種技術是否在工業級使用?
我個人發現隱式拋棄使用後的實例會產生更多可讀的代碼,因爲我知道它是該實例唯一相關的用法。 – Oli 2015-03-31 08:17:56
沒有功能差異,所以它只是一個可讀性的問題,這是主觀的。 – assylias 2015-03-31 08:20:06
只要它不誘惑像使用'{{...}} [初始化]這樣的技巧就可以了(http://stackoverflow.com/questions/29363254/double-brace-initialization-and-serialization/29363359#29363359)。 – 2015-03-31 08:32:42