課程
/后端開發(fā)
/Java
/Java入門第二季
請舉例說明
2016-01-13
源自:Java入門第二季 8-10
正在回答
構(gòu)造函數(shù)實(shí)際上就是對創(chuàng)建出來的對象進(jìn)行一次初始化,因?yàn)槊慨?dāng)創(chuàng)建好一個(gè)對象后,對象中的各種屬性和方法都是選擇默認(rèn)的,我們可以在程序開始運(yùn)行后進(jìn)行賦值或是修改,也可以在程序開始運(yùn)行過程中就進(jìn)行賦值或是修改,后者就是所謂的構(gòu)造函數(shù)的作用。所以,簡單點(diǎn)說,構(gòu)造函數(shù)即是對創(chuàng)建出來的新對象的初始化,你可以不寫構(gòu)造函數(shù),系統(tǒng)會默認(rèn)創(chuàng)建一個(gè)無參無代碼塊的空白構(gòu)造函數(shù),但那等于沒作用。如果你想自己自定義一個(gè)構(gòu)造函數(shù)的話就可以選擇重寫構(gòu)造函數(shù),并且可以寫多個(gè)類型的,比如帶參數(shù)的,帶N個(gè)參數(shù)的,或是不帶參數(shù)但有內(nèi)容的等等。。。最后說明一點(diǎn),為什么會有構(gòu)造函數(shù)這種東西,舉個(gè)例子,如果你開發(fā)一款帶角色類游戲,每當(dāng)你創(chuàng)建一個(gè)角色的時(shí)候你通過構(gòu)造函數(shù)就可以很輕松地給新人物創(chuàng)建一系列默認(rèn)屬性,包括它的初始戰(zhàn)斗力、初始防御力、初始暴發(fā)力、初始魔法值、初始血量等等,這都可以通過構(gòu)造函數(shù)實(shí)現(xiàn)。
構(gòu)造函數(shù)(方法)的寫法:方法名與類名保持一致,比如:public class HelloWorld{
????????public void HelloWorld( ?){
????????????????System.out.println("您好!");?
???}
}
中間那部分就是一個(gè)自定義的無參帶內(nèi)容的構(gòu)造函數(shù),這就是一種構(gòu)造函數(shù)的寫法,望采納!
就是和類名同名的方法,實(shí)例化對象的時(shí)候會執(zhí)行這個(gè)方法,因此用它來初始化對象屬性
我覺得可以把它理解為一個(gè)創(chuàng)建對象時(shí)被調(diào)用的方法
還是不懂
類中不寫構(gòu)造函數(shù),在生成對象的時(shí)候會調(diào)用隱式的構(gòu)造函數(shù)。如果自己寫了構(gòu)造函數(shù),就會調(diào)用你自己寫的
我的理解就是給對象的屬性賦值的函數(shù)‘例如:
class aaa{
int a,b,c;
public aaa(int m,int n,int p){
a=m;b=n;c=p;
class Main(){
static public void main(String[] args){
aaa A=new aaa(1,2,3);
以上代碼就是用到了構(gòu)造方法,將對象A的屬性分別賦值1,2,3.
舉報(bào)
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
4 回答構(gòu)造函數(shù).....
4 回答構(gòu)造函數(shù)和構(gòu)造方法
4 回答關(guān)于構(gòu)造函數(shù)
5 回答構(gòu)造函數(shù)和那個(gè)和類名相同的這個(gè)方法,哪個(gè)是構(gòu)造函數(shù)啊
2 回答這個(gè)求和函數(shù)的構(gòu)造
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-01-31
構(gòu)造函數(shù)實(shí)際上就是對創(chuàng)建出來的對象進(jìn)行一次初始化,因?yàn)槊慨?dāng)創(chuàng)建好一個(gè)對象后,對象中的各種屬性和方法都是選擇默認(rèn)的,我們可以在程序開始運(yùn)行后進(jìn)行賦值或是修改,也可以在程序開始運(yùn)行過程中就進(jìn)行賦值或是修改,后者就是所謂的構(gòu)造函數(shù)的作用。所以,簡單點(diǎn)說,構(gòu)造函數(shù)即是對創(chuàng)建出來的新對象的初始化,你可以不寫構(gòu)造函數(shù),系統(tǒng)會默認(rèn)創(chuàng)建一個(gè)無參無代碼塊的空白構(gòu)造函數(shù),但那等于沒作用。如果你想自己自定義一個(gè)構(gòu)造函數(shù)的話就可以選擇重寫構(gòu)造函數(shù),并且可以寫多個(gè)類型的,比如帶參數(shù)的,帶N個(gè)參數(shù)的,或是不帶參數(shù)但有內(nèi)容的等等。。。最后說明一點(diǎn),為什么會有構(gòu)造函數(shù)這種東西,舉個(gè)例子,如果你開發(fā)一款帶角色類游戲,每當(dāng)你創(chuàng)建一個(gè)角色的時(shí)候你通過構(gòu)造函數(shù)就可以很輕松地給新人物創(chuàng)建一系列默認(rèn)屬性,包括它的初始戰(zhàn)斗力、初始防御力、初始暴發(fā)力、初始魔法值、初始血量等等,這都可以通過構(gòu)造函數(shù)實(shí)現(xiàn)。
構(gòu)造函數(shù)(方法)的寫法:方法名與類名保持一致,比如:public class HelloWorld{
????????public void HelloWorld( ?){
????????????????System.out.println("您好!");?
???}
}
中間那部分就是一個(gè)自定義的無參帶內(nèi)容的構(gòu)造函數(shù),這就是一種構(gòu)造函數(shù)的寫法,望采納!
2016-01-20
就是和類名同名的方法,實(shí)例化對象的時(shí)候會執(zhí)行這個(gè)方法,因此用它來初始化對象屬性
2016-01-13
我覺得可以把它理解為一個(gè)創(chuàng)建對象時(shí)被調(diào)用的方法
2016-01-13
還是不懂
2016-01-13
類中不寫構(gòu)造函數(shù),在生成對象的時(shí)候會調(diào)用隱式的構(gòu)造函數(shù)。如果自己寫了構(gòu)造函數(shù),就會調(diào)用你自己寫的
2016-01-13
我的理解就是給對象的屬性賦值的函數(shù)‘例如:
class aaa{
int a,b,c;
public aaa(int m,int n,int p){
a=m;b=n;c=p;
}
}
class Main(){
static public void main(String[] args){
aaa A=new aaa(1,2,3);
}
}
以上代碼就是用到了構(gòu)造方法,將對象A的屬性分別賦值1,2,3.