Java構(gòu)造方法實例詳解(動力節(jié)點java學(xué)院整理)
構(gòu)造函數(shù)是一種特殊的函數(shù)。其主要功能是用來在創(chuàng)建對象時初始化對象, 即為v對象成員變量賦初始值,總與new運算符一起使用在創(chuàng)建對象的語句中。構(gòu)造函數(shù)與類名相同,可重載多個不同的構(gòu)造函數(shù)。在JAVA語言中,構(gòu)造函數(shù)與C++語言中的構(gòu)造函數(shù)相同,JAVA語言中普遍稱之為構(gòu)造方法。
使用構(gòu)造器時需要記住:
1.構(gòu)造器必須與類同名(如果一個源文件中有多個類,那么構(gòu)造器必須與公共類同名)
2.每個類可以有一個以上的構(gòu)造器
3.構(gòu)造器可以有0個、1個或1個以上的參數(shù)
4.構(gòu)造器沒有返回值
5.構(gòu)造器總是伴隨著new操作一起調(diào)用
示例:
A.java
Java代碼
public class A{
public A(){
System.out.println("調(diào)用了無參的構(gòu)造函數(shù)");
}
public A(String mess){
System.out.println("調(diào)用了有參的構(gòu)造函數(shù)\n"+
"參數(shù)內(nèi)容為:"+mess);
}
}
Test.java
Java代碼
public class Test{
public static void main(String [] args){
A a_1=new A();//調(diào)用無參的構(gòu)造函數(shù)
A a_2=new A("Hello");//調(diào)用有參的構(gòu)造函數(shù)
}
}
輸出結(jié)果:

繼承與構(gòu)造函數(shù)
使用super調(diào)用父類構(gòu)造器的語句必須是子類構(gòu)造器的第一條語句
如果子類構(gòu)造器沒有顯式地調(diào)用父類的構(gòu)造器,則將自動調(diào)用父類的默認(rèn)(沒有參數(shù))的構(gòu)造器。如果父類沒有不帶參數(shù)的構(gòu)造器,并且在子類的構(gòu)造器中又沒有顯式地調(diào)用父類的構(gòu)造器,則java編譯器將報告錯誤
示例:
A.java
Java代碼
public class A{
public A(){
System.out.println("調(diào)用了A的無參構(gòu)造函數(shù)");
}
public A(String mess){
System.out.println("調(diào)用了A的有參的構(gòu)造函數(shù)\n"+
"參數(shù)內(nèi)容為:"+mess);
}
}
B.java
Java代碼
public class B extends A{
public B(){
System.out.println("調(diào)用了B的無參構(gòu)造函數(shù)");
}
public B(String mess){
super(mess);
System.out.println("調(diào)用了B的有參構(gòu)造函數(shù)\n"+
"參數(shù)內(nèi)容為:"+mess);
}
}
Test.java
Java代碼
public class Test{
public static void main(String [] args){
B b_01=new B();
B b_02=new B("你好");
}
}
輸出結(jié)果:

以上所述是小編給大家介紹的Java構(gòu)造方法實例詳解(動力節(jié)點java學(xué)院整理),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Java中用POI實現(xiàn)將數(shù)據(jù)導(dǎo)出到Excel
這篇文章主要介紹了Java中用POI實現(xiàn)將數(shù)據(jù)導(dǎo)出到Excel,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java的小伙伴們有非常好的幫助,需要的朋友可以參考下2021-04-04
SpringBoot+Vue項目部署上線的實現(xiàn)示例
本文主要介紹了SpringBoot+Vue項目部署上線的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02
詳解java開啟異步線程的幾種方法(@Async,AsyncManager,線程池)
在springboot框架中,可以使用注解簡單實現(xiàn)線程的操作,還有AsyncManager的方式,如果需要復(fù)雜的線程操作,可以使用線程池實現(xiàn),本文通過實例代碼介紹java開啟異步線程的幾種方法(@Async,AsyncManager,線程池),感興趣的朋友一起看看吧2023-09-09
使用@Valid+BindingResult進(jìn)行controller參數(shù)校驗方式
這篇文章主要介紹了使用@Valid+BindingResult進(jìn)行controller參數(shù)校驗方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12
詳細(xì)談?wù)凧ava中l(wèi)ong和double的原子性
原子性是指一個操作或多個操作要么全部執(zhí)行,且執(zhí)行的過程不會被任何因素打斷,要么就都不執(zhí)行,下面這篇文章主要給大家介紹了關(guān)于Java中l(wèi)ong和double原子性的相關(guān)資料,需要的朋友可以參考下2021-08-08

