Java靜態(tài)代碼塊的作用:Java靜態(tài)代碼塊中的代碼會(huì)在類加載JVM時(shí)運(yùn)行,且只被執(zhí)行一次,也就是說這些代碼不需要實(shí)例化類就能夠被調(diào)用。一般情況下,如果有些代碼必須在項(xiàng)目啟動(dòng)的時(shí)候就執(zhí)行的時(shí)候,就需要使用靜態(tài)代碼塊。
專注于為中小企業(yè)提供網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)山丹免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
首先靜態(tài)代碼塊static{...}是在類被裝載的時(shí)候執(zhí)行,且只執(zhí)行一次;靜態(tài)代碼塊是在內(nèi)存中開辟的一塊公共區(qū)域,類的多個(gè)實(shí)例共享的區(qū)域,任何該類的實(shí)例對(duì)該區(qū)域的操作都對(duì)所有所有該類的實(shí)例對(duì)該區(qū)域的操作都是生效的。
Java也是一樣,Java的.class字節(jié)碼文件要想執(zhí)行,首先也要加載到內(nèi)存,由類加載器把字節(jié)碼文件的代碼加載到內(nèi)存中,這一步就叫類加載,這是首先要進(jìn)行的。
直接在類中定義且沒有加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)鍵字聲明的代碼塊。
相同點(diǎn):每創(chuàng)建一個(gè)對(duì)象,構(gòu)造代碼塊和構(gòu)造函數(shù)都執(zhí)行一次,不同點(diǎn):執(zhí)行的順序不同,先執(zhí)行構(gòu)造代碼塊,再執(zhí)行構(gòu)造方法。
執(zhí)行次數(shù)不同 靜態(tài)塊只執(zhí)行一次,初始化塊可以執(zhí)行多次。作用不同 靜態(tài)初始化塊僅能初始化類變量,即static修飾的數(shù)據(jù)成員。非靜態(tài)初始化塊可以初始化類的實(shí)例變量。
代碼塊有構(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ì)象的。
也就是說,構(gòu)造代碼塊中定義的是不同對(duì)象共性的初始化內(nèi)容。所以理所當(dāng)然的,構(gòu)造代碼塊在構(gòu)造函數(shù)之前執(zhí)行。
1、static{...}是靜態(tài)塊,而只有{...}的是叫做構(gòu)造塊。靜態(tài)塊在一個(gè)程序里面只執(zhí)行一次;而構(gòu)造塊是,只要建立一個(gè)對(duì)象,構(gòu)造代碼塊都會(huì)執(zhí)行一次。
2、{}代表一個(gè)代碼塊。比如if或者while語句等需要同時(shí)執(zhí)行多條語句時(shí),就需要把這些語句用{}括起來。
3、java中有四種代碼塊 普通代碼塊:直接在{}中出現(xiàn)的。構(gòu)造代碼塊:在構(gòu)造函數(shù)的{}中出現(xiàn)的。靜態(tài)代碼塊:static{}中出現(xiàn)的。同步代碼塊:多線程中出現(xiàn)。
4、是語句結(jié)束符號(hào)。{是代碼塊或類型及方法的開始標(biāo)記,代碼塊指方法中出現(xiàn)的做為一個(gè)整體的代碼的集合,如循環(huán)中出現(xiàn)的。要說有共同之處,那就是它們都是JAVA語言中的標(biāo)記。
本文標(biāo)題:java中{}靜態(tài)代碼塊 java中靜態(tài)代碼塊會(huì)隨著類對(duì)象的創(chuàng)建而執(zhí)行
網(wǎng)站URL:http://m.kartarina.com/article22/decpocc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、靜態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化、微信公眾號(hào)、軟件開發(fā)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)