淺談靜態(tài)變量、成員變量、局部變量三者的區(qū)別
靜態(tài)變量和成員變量的區(qū)別:
A:所屬不同
靜態(tài)變量:屬于類,類變量
成員變量:屬于對象,對象變量,實例變量
B:內(nèi)存位置不同
靜態(tài)變量:方法區(qū)的靜態(tài)區(qū)
成員變量:堆內(nèi)存
C:生命周期不同
靜態(tài)變量:靜態(tài)變量是隨著類的加載而加載,隨著類的消失而消失
成員變量:成員變量是隨著對象的創(chuàng)建而存在,隨著對象的消失而消失
D:調(diào)用不同
靜態(tài)變量:可以通過對象名調(diào)用,也可以通過類名調(diào)用
成員變量:只能通過對象名調(diào)用
成員變量和局部變量的區(qū)別:
A:在類中的位置不同
成員變量:在類中方法外
局部變量:在方法定義中或者方法聲明上
B:在內(nèi)存中的位置不同
成員變量:在堆內(nèi)存
局部變量:在棧內(nèi)存
C:生命周期不同
成員變量:隨著對象的創(chuàng)建而存在,隨著對象的消失而消失
局部變量:隨著方法的調(diào)用而存在,隨著方法的調(diào)用完畢而消失
D:初始化值不同
成員變量:有默認初始化值
局部變量:沒有默認初始化值,必須定義,賦值,然后才能使用。
注意事項:
局部變量名稱可以和成員變量名稱一樣,在方法中使用的時候,采用的是就近原則。
以上就是小編為大家?guī)淼臏\談靜態(tài)變量、成員變量、局部變量三者的區(qū)別的全部內(nèi)容了,希望對大家有所幫助,多多支持腳本之家~
相關文章
java 在Jetty9中使用HttpSessionListener和Filter
這篇文章主要介紹了java 在Jetty9中使用HttpSessionListener和Filter的相關資料,需要的朋友可以參考下2017-06-06java:程序包org.bouncycastle.jce.provider不存在問題及解決
這篇文章主要介紹了java:程序包org.bouncycastle.jce.provider不存在問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05JAVA基于Arrays.sort()實現(xiàn)數(shù)組升序和降序
這篇文章主要介紹了JAVA基于Arrays.sort()實現(xiàn)數(shù)組升序和降序,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-06-06