靜態(tài)方法是在類中使用staitc修飾的方法,在類定義的時(shí)候已經(jīng)被裝載和碼兆分配。
雙柏網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、自適應(yīng)網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)于2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
靜態(tài)方法為類所有,可以通過對(duì)象來使用,也可以通過類來使用。
我們之前一直寫的mian方法仔細(xì)看看,它就是一梁頃個(gè)靜態(tài)方法,靜態(tài)方法使用如下:
運(yùn)行結(jié)果:
使用靜態(tài)方法時(shí),要注意:
1、靜態(tài)方法可以調(diào)用同類中的其他成員,但不能直接調(diào)用非靜態(tài)成員,如:
運(yùn)行結(jié)果:
2、但是如果希望靜態(tài)方法中調(diào)用非靜態(tài)成員,可以通過創(chuàng)建類的對(duì)象 ,然后通過對(duì)象來訪問非靜態(tài)變量。如
運(yùn)行結(jié)果:
3、靜態(tài)遲渣租方法同樣不能直接調(diào)用非靜態(tài)方法,但可以通過對(duì)象來訪問非靜態(tài)方法,如:
運(yùn)行結(jié)果:
Java靜態(tài)代碼塊的作用:Java靜態(tài)代碼塊中的代碼會(huì)在類加載JVM時(shí)運(yùn)行,且只被執(zhí)行一次,也就是說這些代碼不需要實(shí)例化類就能夠被調(diào)用。一般情況下,如果有些代碼必須在項(xiàng)目啟動(dòng)的時(shí)候就執(zhí)行的時(shí)候,就需要使用靜態(tài)代碼塊。
Java靜態(tài)代碼塊的用法:一個(gè)類可以使用不包含在任何方法體中的靜態(tài)代碼塊,當(dāng)類被載入時(shí),靜態(tài)代碼塊被指輪改執(zhí)行,且唯判只被執(zhí)行桐租一次,靜態(tài)塊常用來執(zhí)行類屬性的初始化。例如:
static
{
int
a=0;
}
構(gòu)造方法
作用:對(duì)對(duì)象的屬性(成員變量)進(jìn)行初始化
寫法:
1.構(gòu)造方法的方法名與類名完全相同
2.沒有返回值類型(連void都不寫)
3.沒有返回值
注意事項(xiàng):
1.沒寫構(gòu)造方法
系統(tǒng)則會(huì)提供一個(gè)無(wú)參的構(gòu)造方法
2.寫了有參的構(gòu)造方法
系統(tǒng)不會(huì)提供無(wú)參的構(gòu)造方法
所以在寫有參的構(gòu)造方法時(shí)帆衫最好把無(wú)參的也寫上
內(nèi)存表現(xiàn)步驟
1.類加載到方法區(qū)
2.加載到方法區(qū)的同時(shí)。IT培訓(xùn)認(rèn)為靜態(tài)變量被加載到方法區(qū)的靜態(tài)區(qū)
3.main入棧
4.在堆內(nèi)存中創(chuàng)建對(duì)象
5.把地址賦值給main函數(shù)的對(duì)象保存
6.main函數(shù)出棧
7.程序結(jié)束
靜態(tài)變量戚轎耐與成員變量的區(qū)別:
1.所屬不同:
成員變量:屬于對(duì)象的又叫對(duì)象變量(實(shí)例變量)
靜態(tài)變量:屬于類又叫類變量
2.內(nèi)存中的存儲(chǔ)位置:
成員變量:存儲(chǔ)在堆內(nèi)存
靜態(tài)變量:存處在方法區(qū)的靜態(tài)高春區(qū)
3.加載到內(nèi)存中的時(shí)機(jī)(生命周期的不同):
成員變量:隨著對(duì)象的創(chuàng)建而創(chuàng)建
靜態(tài)變量:隨著類的加載而存在
靜態(tài)代碼稿亮塊:有些代碼必須在項(xiàng)目啟動(dòng)的時(shí)候就執(zhí)行,這種代碼是主動(dòng)執(zhí)行的(當(dāng)類被載入時(shí),靜態(tài)代碼塊被執(zhí)行,且只被執(zhí)行一次,靜態(tài)塊常用來執(zhí)行類屬性的初始化)
靜態(tài)方法:需要在項(xiàng)目啟動(dòng)的時(shí)候就初始化,在不創(chuàng)建對(duì)象的情況下,這種代碼是被動(dòng)羨兆執(zhí)行的(靜態(tài)方法在類加載的時(shí)候就已經(jīng)加載
可以用類名直兄敬租接調(diào)用)。
兩者的區(qū)別是:靜態(tài)代碼塊是自動(dòng)執(zhí)行的,
靜態(tài)方法是被調(diào)用的時(shí)候才執(zhí)行的.
分享標(biāo)題:java靜態(tài)代碼方法 java類靜態(tài)代碼 構(gòu)造代碼執(zhí)行時(shí)間
文章源于:http://vcdvsql.cn/article4/ddpicoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、移動(dòng)網(wǎng)站建設(shè)、營(yíng)銷型網(wǎng)站建設(shè)、建站公司、搜索引擎優(yōu)化、網(wǎng)站設(shè)計(jì)
聲明:本網(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)