日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

【java】静态代码块

發(fā)布時(shí)間:2025/3/21 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【java】静态代码块 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

靜態(tài)代碼塊

  • 格式:

    static

    {

    ?? 靜態(tài)代碼塊中的執(zhí)行語(yǔ)句

    }

  • 特點(diǎn):

    隨著類的加載而執(zhí)行,只執(zhí)行一次,用于給類進(jìn)行初始化,并優(yōu)先于主函數(shù)執(zhí)行

    考慮如下java語(yǔ)句

class?StaticCode {static{System.out.println("a");} } public?class?Demo?{static{System.out.println("b");}public?static?void?main(String[]?args){new?StaticCode();new?StaticCode();System.out.println("end");}static{System.out.println("c");}}

輸出結(jié)果為:

b

c

a????? <==雖然有兩個(gè)調(diào)用StaticCode的語(yǔ)句,但是因?yàn)槠渲兄话o態(tài)代碼塊,而靜態(tài)代碼塊只執(zhí)行

????????? 一次,所以只輸出一個(gè)a

end


只有涉及到類中的內(nèi)容的時(shí)候,類才會(huì)加載,靜態(tài)代碼塊才會(huì)執(zhí)行

StaticCode m = null;?? <==類沒(méi)有被加載

s = new StaticCode();? <==類被加載了,因?yàn)橛玫搅祟愔械臉?gòu)造函數(shù)StaticCode(),所以靜態(tài)代碼塊

????????????????????????? 會(huì)被執(zhí)行

所以判斷一個(gè)類有沒(méi)有被加載,可以用靜態(tài)代碼塊來(lái)驗(yàn)證

class?StaticCode {StaticCode(){System.out.println("c");}static{System.out.println("a");????????????I}{System.out.println("b");????????????II}StaticCode(int?x){System.out.println("hah");??????????III}public?static?void?test(){System.out.println("succeed");} } public?class?Demo?{public?static?void?main(String[]?args){new?StaticCode(5);}}

I??? -----? 靜態(tài)代碼塊給類進(jìn)行初始化

II?? -----? 構(gòu)造代碼塊給對(duì)象進(jìn)行初始化

III? -----? 構(gòu)造函數(shù)給對(duì)應(yīng)對(duì)象進(jìn)行初始化

輸出結(jié)果:

a

b

hah


注意:靜態(tài)代碼塊只可以訪問(wèn)靜態(tài)變量

????? 構(gòu)造代碼塊可以訪問(wèn)到

轉(zhuǎn)載于:https://blog.51cto.com/caoyue/1620598

總結(jié)

以上是生活随笔為你收集整理的【java】静态代码块的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。