課程
/后端開發(fā)
/Java
/Java入門第二季 升級(jí)版
通過構(gòu)造方法初始化與通過初始化塊初始化有什么區(qū)別嗎 我怎么覺得一樣
2016-09-26
源自:Java入門第二季 升級(jí)版 8-10
正在回答
我就按照慕課網(wǎng)練習(xí)題的例子來說
// 構(gòu)造方法
public ? HelloWorld() {?
System.out.println("通過構(gòu)造方法初始化name");
name = "tom";
}
// 初始化塊
{?
System.out.println("通過初始化塊初始化sex");
sex = "男";
分析:使用構(gòu)造方法可以為每一個(gè)對(duì)象賦值name,使用初始化塊賦值后,每個(gè)sex屬性都是“男”
所以構(gòu)造方法賦值比較常用,如果是只有一個(gè)對(duì)象那么效果完全一樣
????????? 另外執(zhí)行順序不同(靜態(tài)初始化塊 >-實(shí)例初始化塊>- 構(gòu)造函數(shù))。靜態(tài)代碼塊在類加載時(shí)被執(zhí)行,而非靜態(tài)代碼(包括初始化代碼塊和構(gòu)造函數(shù))在生成對(duì)象時(shí)才被執(zhí)行
舉報(bào)
課程升級(jí)!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會(huì)Java面向?qū)ο缶幊痰膴W妙
1 回答初始化問題
2 回答初始化問題
2 回答初始化塊問題
1 回答初始化塊的問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-09-26
我就按照慕課網(wǎng)練習(xí)題的例子來說
// 構(gòu)造方法
public ? HelloWorld() {?
System.out.println("通過構(gòu)造方法初始化name");
name = "tom";
}
// 初始化塊
{?
System.out.println("通過初始化塊初始化sex");
sex = "男";
}
分析:使用構(gòu)造方法可以為每一個(gè)對(duì)象賦值name,使用初始化塊賦值后,每個(gè)sex屬性都是“男”
所以構(gòu)造方法賦值比較常用,如果是只有一個(gè)對(duì)象那么效果完全一樣
????????? 另外執(zhí)行順序不同(靜態(tài)初始化塊 >-實(shí)例初始化塊>- 構(gòu)造函數(shù))。靜態(tài)代碼塊在類加載時(shí)被執(zhí)行,而非靜態(tài)代碼(包括初始化代碼塊和構(gòu)造函數(shù))在生成對(duì)象時(shí)才被執(zhí)行