2017-03-05 69 views
-4

我是一個相對在java業餘,並一直呼籲靜態變量方法使用類和對象的所有時間。當它們是靜態時,它們可以被類和對象使用。爲什麼不能所有的方法和類變量都是靜態的?

爲什麼程序員不是隻保留類變量和方法的默認靜態?

+0

可能重複的問題:[爲什麼不是一切都是靜態函數在Java中的任何區別在以下兩個](http://stackoverflow.com/questions/33902452/why-not-everything-is-static-function-in-java -any-differences-in-following-two?noredirect = 1&lq = 1) –

+0

你不認爲那些創建Java的聰明人有理由支持它們嗎? http://stackoverflow.com/questions/413898/what-does-the-static-keyword-do-in-a-class –

+0

[Java:何時使用靜態方法]的可能重複(http://stackoverflow.com/questions/2671496/java-when-to-use-static-methods) –

回答

0

對於靜態方法,我們根本不指定對象,我們只需編寫類名稱和方法名稱即可。這意味着在靜態方法中,我們沒有什麼可以稱爲這個,所以任何對它的引用(或對任何非靜態字段的引用)都會導致編譯器拋出一個錯誤,因爲它沒有可用的對象。

+0

你的權利「這個」變量不能用靜態方法完成。我只是想知道,因爲即使「this」是一個非靜態變量。如果所有變量都是靜態的,那麼方法會更好,因爲不僅類可以稱他們,但也是對象。 –

+0

我會用這個回答你:http://softwareengineering.stackexchange.com/questions/98083/cant-i-just-use-all-static-methods閱讀頂部的答案,它應該給你一個更廣泛的概念靜態的問題。 :) – Yodamatte

+0

非常感謝。 –

相關問題