java中的構(gòu)造函數(shù)有哪些類型?相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

1.無參構(gòu)造函數(shù)
不帶入?yún)⒌臉?gòu)造函數(shù)叫無參構(gòu)造函數(shù),對類的成員初始化有兩種方法:
(1)在類成員變量聲明時進(jìn)行初始化
public class MyClass {
private String name = "Jerry";
private int id = 1;
public MyClass()
{
}
}(2)在無參構(gòu)造函數(shù)的方法體里對類成員變量初始化
public class MyClass {
private String name;
private int id;
public MyClass()
{
this.name = "Jerry";
this.id = 1;
}
}帶入?yún)⒌臉?gòu)造函數(shù)叫有參構(gòu)造函數(shù)。
public class Employee {
int empId;
String empName;
//parameterized constructor with two parameters
Employee(int id, String name){
this.empId = id;
this.empName = name;
}
void info(){
System.out.println("Id: "+empId+" Name: "+empName);
}
public static void main(String args[]){
Employee obj1 = new Employee(10245,"Chaitanya");
Employee obj2 = new Employee(92232,"Negan");
obj1.info();
obj2.info();
}
}輸出:
Id: 10245 Name: Chaitanya Id: 92232 Name: Negan
當(dāng)類里沒有顯式地定義代碼來實(shí)現(xiàn)任何構(gòu)造函數(shù)時,Java編譯器將會在編譯的字節(jié)碼(.class文件)里面為這個類插入默認(rèn)構(gòu)造函數(shù)。由于是在編譯階段插入,因此在源文件(.java)里是不會找到默認(rèn)構(gòu)造函數(shù)的代碼的。
默認(rèn)構(gòu)造函數(shù)形式上類似無參構(gòu)造函數(shù)(都沒有入?yún)ⅲ嵌卟⒉荒軇澋忍枺瑓^(qū)別如下:
默認(rèn)構(gòu)造函數(shù)方法體為空,無參構(gòu)造函數(shù)方法體可以為空也可以不為空;
只要類里顯式的創(chuàng)建了一個構(gòu)造函數(shù),比如一個無參構(gòu)造函數(shù),編譯器都不會再為這個類創(chuàng)建默認(rèn)構(gòu)造函數(shù)了。

看完上述內(nèi)容,你們掌握java中的構(gòu)造函數(shù)有哪些類型的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
當(dāng)前文章:java中的構(gòu)造函數(shù)有哪些類型-創(chuàng)新互聯(lián)
地址分享:http://chinadenli.net/article0/dphsio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、網(wǎng)站設(shè)計公司、網(wǎng)站內(nèi)鏈、關(guān)鍵詞優(yōu)化、網(wǎng)站收錄、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容