内部类不能有静态变量(除静态的对Static的理解)
生活随笔
收集整理的這篇文章主要介紹了
内部类不能有静态变量(除静态的对Static的理解)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
關于內部類(static與final)
Static 不用實例化就能加載進內存
而內部類需要外部類實例化后才能加載進內存。這就間接造成static需要實例化了。與static不需要實例化語義矛盾
?
1、假設外部類沒有實例化,
-
- 通過類名.調用,這時內部類需要實例化才能進內存,顯然外部類沒有實例化則static 未進內存,無法直接調用與static 語義,矛盾。
靜態的內部類就沒有這一矛盾,不需要實例化就能調用靜態變量。
?
2、假設外部類實力化,
-
- 而static 語義是不用通過類的實例化就能使用,所以又產生了矛盾
如果要使用static變量則需要用final修飾,final修飾后變量不在加載類時進內存,而是在加載了類之前進入內存。
?
最后:局部內部類所在位置方法內的變量不可改變,已被final修飾變成常量。默認有final(1.8之后)。而且只有之中操作方式。
?
加油? ?堅持? ? ?
?
轉載于:https://www.cnblogs.com/meani/p/11242448.html
總結
以上是生活随笔為你收集整理的内部类不能有静态变量(除静态的对Static的理解)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 操作系统核心原理-5.内存管理(中):分
- 下一篇: 奔腾B70尊享版能用奔腾数字钥匙吗?