欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java什么是靜態(tài)代碼塊 JAVA靜態(tài)塊

Java的靜態(tài)塊和初始化塊分別何時(shí)執(zhí)行?有什么區(qū)別?

靜態(tài)初始化塊:當(dāng)類(lèi)第一次加載時(shí)執(zhí)行。

成都創(chuàng)新互聯(lián)公司是工信部頒發(fā)資質(zhì)IDC服務(wù)器商,為用戶(hù)提供優(yōu)質(zhì)的綿陽(yáng)服務(wù)器托管服務(wù)

非靜態(tài)初始化塊:非靜態(tài)初始化塊會(huì)在構(gòu)造函數(shù)執(zhí)行時(shí),且在構(gòu)造函數(shù)主體代碼執(zhí)行之前被執(zhí)行。

區(qū)別如下:

1、執(zhí)行次數(shù)不同

靜態(tài)塊只執(zhí)行一次,初始化塊可以執(zhí)行多次。

2、作用不同

靜態(tài)初始化塊僅能初始化類(lèi)變量,即static修飾的數(shù)據(jù)成員。

非靜態(tài)初始化塊可以初始化類(lèi)的實(shí)例變量。

擴(kuò)展資料:

使用Java靜態(tài)代碼塊注意事項(xiàng):

1、它是隨著類(lèi)的加載而執(zhí)行,只執(zhí)行一次,并優(yōu)先于主函數(shù)。具體說(shuō),靜態(tài)代碼塊是由類(lèi)調(diào)用的。類(lèi)調(diào)用時(shí),先執(zhí)行靜態(tài)代碼塊,然后才執(zhí)行主函數(shù)的。

2、靜態(tài)代碼塊其實(shí)就是給類(lèi)初始化的,而構(gòu)造代碼塊是給對(duì)象初始化的。

3、靜態(tài)代碼塊中的變量是局部變量,與普通函數(shù)中的局部變量性質(zhì)沒(méi)有區(qū)別。

4、一個(gè)類(lèi)中可以有多個(gè)靜態(tài)代碼塊。

5、對(duì)于靜態(tài)變量、靜態(tài)初始化塊、變量、初始化塊、構(gòu)造器,它們的初始化順序依次是(靜態(tài)變量、靜態(tài)初始化塊)(變量、初始化塊)構(gòu)造器。

java中靜態(tài)代碼塊的作用跟用法

Java靜態(tài)代碼塊的作用:Java靜態(tài)代碼塊中的代碼會(huì)在類(lèi)加載JVM時(shí)運(yùn)行,且只被執(zhí)行一次,也就是說(shuō)這些代碼不需要實(shí)例化類(lèi)就能夠被調(diào)用。一般情況下,如果有些代碼必須在項(xiàng)目啟動(dòng)的時(shí)候就執(zhí)行的時(shí)候,就需要使用靜態(tài)代碼塊。

Java靜態(tài)代碼塊的用法:一個(gè)類(lèi)可以使用不包含在任何方法體中的靜態(tài)代碼塊,當(dāng)類(lèi)被載入時(shí),靜態(tài)代碼塊被執(zhí)行,且只被執(zhí)行一次,靜態(tài)塊常用來(lái)執(zhí)行類(lèi)屬性的初始化。例如:

static

{

int

a=0;

}

Java靜態(tài)代碼塊和靜態(tài)方法的區(qū)別

靜態(tài)代碼塊:有些代碼必須在項(xiàng)目啟動(dòng)的時(shí)候就執(zhí)行,這種代碼是主動(dòng)執(zhí)行的(當(dāng)類(lèi)被載入時(shí),靜態(tài)代碼塊被執(zhí)行,且只被執(zhí)行一次,靜態(tài)塊常用來(lái)執(zhí)行類(lèi)屬性的初始化)

靜態(tài)方法:需要在項(xiàng)目啟動(dòng)的時(shí)候就初始化,在不創(chuàng)建對(duì)象的情況下,這種代碼是被動(dòng)執(zhí)行的(靜態(tài)方法在類(lèi)加載的時(shí)候就已經(jīng)加載

可以用類(lèi)名直接調(diào)用)。

兩者的區(qū)別是:靜態(tài)代碼塊是自動(dòng)執(zhí)行的,

靜態(tài)方法是被調(diào)用的時(shí)候才執(zhí)行的.

求java大神什么是靜態(tài)代碼塊啊,網(wǎng)上寫(xiě)的看不懂啊。平時(shí)只用過(guò)public class 創(chuàng)建類(lèi)。p

比如你平常寫(xiě)的方法是public void ff(){}。

靜態(tài)代碼塊就是直接 static{ }

這樣寫(xiě)是因?yàn)榧虞d這個(gè)類(lèi)的時(shí)候會(huì)自動(dòng)加載這個(gè),不用調(diào)用。

給個(gè)看個(gè)圖片吧。

有問(wèn)題可以追問(wèn),望采納。

java中詳解靜態(tài)代碼塊,構(gòu)造代碼塊,構(gòu)造方法。求簡(jiǎn)單易懂的解釋

靜態(tài)代碼塊:只要一用到某個(gè)類(lèi),那么這個(gè)類(lèi)的靜態(tài)代碼塊就先執(zhí)行,比如:

public?class?Dog(){

int?i?=?0;

static?{

i?=?1;?

}??

public?Dog(){

i?=?2;?

}????

}

當(dāng)你new?一個(gè)Dog()對(duì)象時(shí),首先i= 1?會(huì)執(zhí)行,然后才執(zhí)行 public?Dog(){}這個(gè)方法。

pulic Dog()?是與類(lèi)同名、沒(méi)有返回值的方法,也就是構(gòu)造方法。

構(gòu)造方法的作用是用來(lái)初始化一個(gè)對(duì)象的。比如你可以在里面寫(xiě) i = 2;

那么當(dāng)你?Dog d = new Dog()執(zhí)行這段代碼的時(shí)候,是這樣的:

首先 i = 0 ;

然后執(zhí)行static?靜態(tài)代碼塊,此時(shí)i= 1;

最后執(zhí)行public Dog();? i = 2;

java中靜態(tài)代碼塊 static的作用

類(lèi)加載的時(shí)候就會(huì)去執(zhí)行靜態(tài)代碼塊的內(nèi)容。

比如說(shuō):

寫(xiě)連接數(shù)據(jù)庫(kù)的那些內(nèi)容時(shí),

經(jīng)常有classforName("XXX"),用于加載一些東西,這些東西就可以寫(xiě)在靜態(tài)代碼塊中。

還有一些,你想讓類(lèi)加載時(shí)就執(zhí)行的程序也可以放在里面。

名稱(chēng)欄目:java什么是靜態(tài)代碼塊 JAVA靜態(tài)塊
URL網(wǎng)址:http://chinadenli.net/article46/hipehg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作網(wǎng)站設(shè)計(jì)公司用戶(hù)體驗(yàn)品牌網(wǎng)站設(shè)計(jì)App設(shè)計(jì)品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)