Java中初始化塊詳解及實(shí)例代碼
Java中初始化塊詳解
在Java中,有兩種初始化塊:靜態(tài)初始化塊和非靜態(tài)初始化塊.
靜態(tài)初始化塊:使用static定義,當(dāng)類裝載到系統(tǒng)時(shí)執(zhí)行一次.若在靜態(tài)初始化塊中想初始化變量,那僅能初始化類變量,即static修飾的數(shù)據(jù)成員.
非靜態(tài)初始化塊:在每個(gè)對(duì)象生成時(shí)都會(huì)被執(zhí)行一次,可以初始化類的實(shí)例變量.
非靜態(tài)初始化塊會(huì)在構(gòu)造函數(shù)執(zhí)行時(shí),且在構(gòu)造函數(shù)主體代碼執(zhí)行之前被運(yùn)行.
括號(hào)里的是初始化塊,這里面的代碼在創(chuàng)建Java對(duì)象時(shí)執(zhí)行,而且在構(gòu)造器之前執(zhí)行!
其實(shí)初始化塊就是構(gòu)造器的補(bǔ)充,初始化塊是不能接收任何參數(shù)的,定義的一些所有對(duì)象共有的屬性、方法等內(nèi)容時(shí)就可以用初始化塊了初始化!!
好處是可以提高初始化塊的復(fù)用,提高整個(gè)應(yīng)用的可維護(hù)性。--《瘋狂java講義》
package com.tiandinet.studyjava;
public class TestInitiateBlock {
{
System.out.println("In non-static initialization block!");
};
static {
System.out.println("In static initialization block!");
};
public TestInitiateBlock() {
System.out.println("In Constructor1!");
}
public void show() {
System.out.println("In show()!");
}
/**
* @param args
*/
public static void main(String[] args) {
TestInitiateBlock ti = new TestInitiateBlock();
ti.show();
}
}
運(yùn)行結(jié)果:
In static initialization block! In non-static initialization block! In Constructor1! In show()!
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
maven下mybatis-plus和pagehelp沖突問(wèn)題的解決方法
這篇文章主要介紹了maven下mybatis-plus和pagehelp沖突的解決方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
Java策略模式實(shí)現(xiàn)簡(jiǎn)單購(gòu)物車功能
這篇文章主要介紹了Java策略模式實(shí)現(xiàn)簡(jiǎn)單地購(gòu)物車,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
Java如何實(shí)現(xiàn)http接口參數(shù)和返回值加密
這篇文章主要介紹了Java如何實(shí)現(xiàn)http接口參數(shù)和返回值加密問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11
SpringBoot使用AOP實(shí)現(xiàn)日志記錄功能詳解
這篇文章主要為大家介紹了SpringBoot使用AOP實(shí)現(xiàn)日志記錄功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
Spring Boot 開發(fā)環(huán)境熱部署詳細(xì)教程
這篇文章主要介紹了Spring Boot 開發(fā)環(huán)境熱部署,本文給大家介紹了Spring Boot 開發(fā)環(huán)境熱部署的原理及快速配置方法,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06

