首頁  >  文章  >  Java  >  java的靜態變數和實例變數的差別是什麼?

java的靜態變數和實例變數的差別是什麼?

青灯夜游
青灯夜游原創
2019-11-16 16:13:035627瀏覽

java的靜態變數和實例變數的差別是什麼?

靜態變數屬於類別的級別,而實例變數屬於物件的級別。

靜態變數和實例變數的主要差異有兩點:

1、存放位置不同

類別變數隨著類別的載入存在於方法區中,實例變數隨著物件的物件的建立存在於堆記憶體中。

2、生命週期不同

類別變數的生命週期最長,隨著類別的載入而加載,隨著類別的消失而消失,實例變數隨著物件的消失而消失。

靜態的使用注意事項:

1、靜態方法只能存取靜態成員(包括成員變數和成員方法),不能存取非靜態成員或方法。

非靜態方法可以存取靜態也可以存取非靜態方法或成員。

2、靜態方法中不能出現this,super關鍵字。

因為靜態是優先於物件存在的,所以不能出現this,super關鍵字

3、主函數是靜態的。

以上是java的靜態變數和實例變數的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn