java中首先是靜態(tài)塊先執(zhí)行,靜態(tài)方法,最后是構(gòu)造函數(shù)。
慶城網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,慶城網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為慶城成百上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的慶城做網(wǎng)站的公司定做!
構(gòu)造代碼塊:執(zhí)行時(shí)間比靜態(tài)代碼塊晚,比構(gòu)造函數(shù)早,和構(gòu)造函數(shù)一樣,只在對(duì)象初始化的時(shí)候運(yùn)行。沒有名字、參數(shù)和返回值。靜態(tài)代碼塊:最早執(zhí)行,類被載入內(nèi)存時(shí)執(zhí)行,只執(zhí)行一次。沒有名字、參數(shù)和返回值,有關(guān)鍵字static。
靜態(tài)初始化塊:當(dāng)類第一次加載時(shí)執(zhí)行。非靜態(tài)初始化塊:非靜態(tài)初始化塊會(huì)在構(gòu)造函數(shù)執(zhí)行時(shí),且在構(gòu)造函數(shù)主體代碼執(zhí)行之前被執(zhí)行。區(qū)別如下:執(zhí)行次數(shù)不同 靜態(tài)塊只執(zhí)行一次,初始化塊可以執(zhí)行多次。
構(gòu)造代碼塊的作用同樣是給對(duì)象進(jìn)行初始化。對(duì)象一建立就運(yùn)行構(gòu)造代碼塊了,而且優(yōu)先于構(gòu)造函數(shù)執(zhí)行。
父類靜態(tài)代碼塊;子類靜態(tài)代碼塊;父類非靜態(tài)代碼塊;父類構(gòu)造函數(shù);子類非靜態(tài)代碼塊;子類構(gòu)造函數(shù);舉例:public class ExA { static { System.out.println(父類靜態(tài)代碼塊。
1、不同點(diǎn):靜態(tài)代碼塊在非靜態(tài)代碼塊之前執(zhí)行(靜態(tài)代碼塊—非靜態(tài)代碼塊—構(gòu)造方法)。靜態(tài)代碼塊只在第一次new執(zhí)行一次,之后不再執(zhí)行,而非靜態(tài)代碼塊在每new 一次就執(zhí)行一次。
2、兩者的區(qū)別就是:靜態(tài)代碼塊是自動(dòng)執(zhí)行的;靜態(tài)方法是被調(diào)用的時(shí)候才執(zhí)行的.靜態(tài)方法 (1)在Java里,可以定義一個(gè)不需要?jiǎng)?chuàng)建對(duì)象的方法,這種方法就是靜態(tài)方法。要實(shí)現(xiàn)這樣的效果,只需要在類中定義的方法前加上static關(guān)鍵字。
3、兩者的區(qū)別是靜態(tài)代碼塊是主動(dòng)執(zhí)行的,靜態(tài)方法是被動(dòng)執(zhí)行,只有被調(diào)用時(shí)才執(zhí)行。構(gòu)造函數(shù)在創(chuàng)建對(duì)象的時(shí)候執(zhí)行。成員方法在被調(diào)用的時(shí)候執(zhí)行??偨Y(jié):Java代碼執(zhí)行先后順序:靜態(tài)代碼塊靜態(tài)方法構(gòu)造函數(shù)=非靜態(tài)代碼塊。
1、直接在類中定義且沒有加static關(guān)鍵字的代碼塊稱為{}構(gòu)造代碼塊。構(gòu)造代碼塊在創(chuàng)建對(duì)象時(shí)被調(diào)用,每次創(chuàng)建對(duì)象都會(huì)被調(diào)用,并且構(gòu)造代碼塊的執(zhí)行次序優(yōu)先于類構(gòu)造函數(shù)。靜態(tài)代碼塊:在java中使用static關(guān)鍵字聲明的代碼塊。
2、靜態(tài)代碼塊在類加載時(shí)執(zhí)行,用于初始化類的一些信息。構(gòu)造代碼塊在相應(yīng)構(gòu)造方法被調(diào)用時(shí)執(zhí)行,用于對(duì)象的初始化。
3、代碼塊有構(gòu)造代碼塊和靜態(tài)代碼塊,靜態(tài)代碼塊是類加載的時(shí)候執(zhí)行的,一共只執(zhí)行一次,構(gòu)造代碼塊是創(chuàng)建類對(duì)象的時(shí)候執(zhí)行的,創(chuàng)建一個(gè)對(duì)象執(zhí)行一次,代碼塊都是用于初始化的,而構(gòu)造函數(shù)是用于創(chuàng)建對(duì)象的。