課程
/后端開發(fā)
/Java
/Java入門第二季
在使用eclipse進(jìn)行編譯時(shí),編譯器一直提示錯(cuò)誤,但是編譯方法是正確的,為啥編譯器會(huì)提示錯(cuò)誤?求大神解答
2017-03-29
源自:Java入門第二季 7-7
正在回答
靜態(tài)內(nèi)部類必須通過new 外部類().成員的方式訪問非靜態(tài)成員;
比如你的12行代碼要這樣寫:syso("訪問外部類中的成員b:" + new SOuter().b );
逆風(fēng)落葉
小瘦學(xué)Java 提問者 回復(fù) 逆風(fēng)落葉
逆風(fēng)落葉 回復(fù) 小瘦學(xué)Java 提問者
你外部的b不是靜態(tài)變量
小瘦學(xué)Java 提問者
你對(duì)成員變量b用了private修飾,導(dǎo)致該變量不能被任何實(shí)例對(duì)象引用,針對(duì)你的問題,有兩種改法:
?將b用public static修飾,變成靜態(tài)成員變量,這時(shí)就可以用SOuter2.b來引用它了
將SOuter2.b改為new SOuter2().b,這樣做的實(shí)質(zhì)是通過new SOuter2()產(chǎn)生了一個(gè)SOuter2類的匿名對(duì)象,然后再通過這個(gè)匿名對(duì)象去引用成員變量b,為了讓b能夠被對(duì)象引用,你還需要將b改成public修飾
標(biāo)準(zhǔn)與或式 回復(fù) 小瘦學(xué)Java 提問者
小瘦學(xué)Java 提問者 回復(fù) 標(biāo)準(zhǔn)與或式
舉報(bào)
課程升級(jí)!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會(huì)Java面向?qū)ο缶幊痰膴W妙
2 回答靜態(tài)內(nèi)部類與方法內(nèi)部類
4 回答靜態(tài)內(nèi)部類的靜態(tài)方法如何訪問靜態(tài)內(nèi)部類的非靜態(tài)成員?
4 回答為什么這段使用靜態(tài)內(nèi)部類的程序會(huì)出錯(cuò)?求解答
3 回答編譯器報(bào)錯(cuò)
2 回答內(nèi)部類分為:成員內(nèi)部類,方法內(nèi)部類,靜態(tài)內(nèi)部來,匿名內(nèi)部類,沒理解透
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2017-03-29
靜態(tài)內(nèi)部類必須通過new 外部類().成員的方式訪問非靜態(tài)成員;
比如你的12行代碼要這樣寫:syso("訪問外部類中的成員b:" + new SOuter().b );
2017-04-18
你外部的b不是靜態(tài)變量
2017-04-03
你對(duì)成員變量b用了private修飾,導(dǎo)致該變量不能被任何實(shí)例對(duì)象引用,針對(duì)你的問題,有兩種改法:
?將b用public static修飾,變成靜態(tài)成員變量,這時(shí)就可以用SOuter2.b來引用它了
將SOuter2.b改為new SOuter2().b,這樣做的實(shí)質(zhì)是通過new SOuter2()產(chǎn)生了一個(gè)SOuter2類的匿名對(duì)象,然后再通過這個(gè)匿名對(duì)象去引用成員變量b,為了讓b能夠被對(duì)象引用,你還需要將b改成public修飾