/*
構(gòu)造代碼塊是寫(xiě)在類中使用大括號(hào)括起來(lái)的代碼捂掰,例如:
{
? ? ?expression1;
? ? expression2;
? ? expression3;
...
}
構(gòu)造代碼塊要注意的事項(xiàng):
1. java編譯器編譯一個(gè)java源代碼文件的時(shí)候,會(huì)吧成員變量的聲明提升至最前面,類似于js中的變量提升;
2. 成員變量的初始化工作其實(shí)都在構(gòu)造函數(shù)中完成的揭北。
3. 一旦經(jīng)過(guò)java編譯器編譯后,構(gòu)造代碼塊的代碼會(huì)被移動(dòng)到構(gòu)造函數(shù)中并且優(yōu)先于構(gòu)造函數(shù)的代碼執(zhí)行甘改,無(wú)論順序如何彪杉。構(gòu)造函數(shù)中的代碼是最后執(zhí)行的。
4. 成員變量的顯式初始化和構(gòu)造代碼的代碼執(zhí)行順序是按照順序執(zhí)行的檩淋。
*/