java學習筆記6——java靜態內部類

        用static修飾一個內部類,則這個內部類就屬於外部類本身,而不屬於外部類的某個對象。因此也被稱爲類內部類,或者靜態內部類。static是把類的成員變量變成類相關,而不是實例相關。外部類的上一級程序單元是包,所以不可以用static修飾;而內部類的上一級程序單元是外部類,使用static修飾可以將內部類變成外部類相關,而不是外部類實例相關。因此,static不可修飾外部類,但可修飾內部類。
        非靜態內部類不能包含靜態成員,但是靜態內部類可以包含靜態成員。根據靜態成員不能訪問非靜態成員的規則,靜態內部類不能訪問外部類的勢力成員,只能訪問外部類的類成員。靜態內部類對象不是寄存在外部類對象裏的,而是寄存在外部類的類本身中。
        內部類的類名不再是簡單的由內部類的類名組成,它實際上還把外部類的類名作爲一個命名空間,作爲內部類類名的限制。因此,子類中的內部類和父類中的內部類不肯能完全同名。即時二者所包含的的內部類的類名相同,但因爲它們所處的外部類的類名不同,所以它們不可能完全同名,也就不可能被重寫。
發佈了27 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章