課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
靜態(tài)內(nèi)部類的成員是靜態(tài)的嗎?
2015-09-21
源自:Java入門第二季 升級版 7-7
正在回答
靜態(tài)內(nèi)部類的成員可以是靜態(tài)的 也可以是非靜態(tài)的, 比如 主函數(shù)就是靜態(tài)的,你在主函數(shù)當中可以定義int x=0;
但是如果一個內(nèi)部類里面有靜態(tài)成員,那么該內(nèi)部類必須是靜態(tài)的,因為靜態(tài)成員會在外部類加載時就加載,這要求了內(nèi)部類也必須加載,所以內(nèi)部類也必須靜態(tài)化
SungJoe 提問者
不一定,你可以把靜態(tài)類與靜態(tài)方法類比著看,靜態(tài)方法里是有非靜態(tài)成員的,靜態(tài)類也一樣。
其實靜態(tài)并不是指它本身有何特殊,而是定義了 這個方法最好是用類去調(diào)用(而非對象,當然對象也是能調(diào)用的),或者這個內(nèi)部類也是要通過外部類(而非對象)去創(chuàng)建實例的。正因為如此,有的時候我們才會感覺static難以理解,像是static方法不能調(diào)用非static方法,是因為如果是類去調(diào)用這個static方法,也就沒有對象,自然不能調(diào)用非靜態(tài)的方法。
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構中體會Java面向對象編程的奧妙
2 回答靜態(tài)內(nèi)部類
1 回答內(nèi)部類與外部類,靜態(tài)和非靜態(tài)
4 回答靜態(tài)內(nèi)部類的靜態(tài)方法如何訪問靜態(tài)內(nèi)部類的非靜態(tài)成員?
2 回答靜態(tài)內(nèi)部類與方法內(nèi)部類
4 回答靜態(tài)內(nèi)部類實例
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2015-09-21
靜態(tài)內(nèi)部類的成員可以是靜態(tài)的 也可以是非靜態(tài)的, 比如 主函數(shù)就是靜態(tài)的,你在主函數(shù)當中可以定義int x=0;
但是如果一個內(nèi)部類里面有靜態(tài)成員,那么該內(nèi)部類必須是靜態(tài)的,因為靜態(tài)成員會在外部類加載時就加載,這要求了內(nèi)部類也必須加載,所以內(nèi)部類也必須靜態(tài)化
2015-09-21
不一定,你可以把靜態(tài)類與靜態(tài)方法類比著看,靜態(tài)方法里是有非靜態(tài)成員的,靜態(tài)類也一樣。
其實靜態(tài)并不是指它本身有何特殊,而是定義了 這個方法最好是用類去調(diào)用(而非對象,當然對象也是能調(diào)用的),或者這個內(nèi)部類也是要通過外部類(而非對象)去創(chuàng)建實例的。正因為如此,有的時候我們才會感覺static難以理解,像是static方法不能調(diào)用非static方法,是因為如果是類去調(diào)用這個static方法,也就沒有對象,自然不能調(diào)用非靜態(tài)的方法。