課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
為什么這樣不可以呢?
2020-02-06
源自:Java入門第二季 升級版 8-6
正在回答
簡單一點,程序首先運行main。輸出了1,然后實例化staticBlock,傳入了輸入值后,進入有參數(shù)的staticBlock代碼塊,輸出了3,然后輸出了結(jié)果。
輸出2,然后執(zhí)行了show方法,。這可以很明顯的看出來,sex的值并沒有向show方法中傳入。所以執(zhí)行show方法輸出的就是空。
直接傳進去值,調(diào)用show方法就有值了。
應(yīng)該是這樣的,有啥不對或不清楚的地方一起討論吧。
奶尤糯米團子 提問者
因為你有參的構(gòu)造函數(shù)那,是直接輸出的傳入值,并未對成員變量進行賦值,所以你調(diào)用show函數(shù)時,顯示的null.
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
4 回答為什么把父類的變量改成靜態(tài)變量(父類中寫有帶參構(gòu)造方法),子類中無參的構(gòu)造方法是對的
2 回答帶參構(gòu)造方法
3 回答為什么不能調(diào)用有參構(gòu)造方法里面的變量進行賦值,而無參構(gòu)造方法里面的變量可以直接調(diào)用進行賦值,為什么用類名聲明一個有參變量不可以調(diào)用有參構(gòu)造方法
3 回答構(gòu)造方法中的變量是不是局部變量
2 回答為什么成員變量的初始化一定要用構(gòu)造方法的參數(shù)傳進來??
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2020-02-06
輸出2,然后執(zhí)行了show方法,。這可以很明顯的看出來,sex的值并沒有向show方法中傳入。所以執(zhí)行show方法輸出的就是空。
直接傳進去值,調(diào)用show方法就有值了。
應(yīng)該是這樣的,有啥不對或不清楚的地方一起討論吧。
2020-02-06
因為你有參的構(gòu)造函數(shù)那,是直接輸出的傳入值,并未對成員變量進行賦值,所以你調(diào)用show函數(shù)時,顯示的null.