2020-2-19 seo達(dá)人
標(biāo)準(zhǔn)格式注意:
super()和this()調(diào)用語句不能同時(shí)在一個(gè)構(gòu)造器中。
super()或this()調(diào)用語句只能作為構(gòu)造器中的第一句出現(xiàn)。原因:
無論通過哪個(gè)構(gòu)造器創(chuàng)建子類對象,需要保證先初始化父類。
目的是,當(dāng)子類繼承父類后,“繼承”父類所有的屬性和方法,因此子類有必要知道父類如何為對象進(jìn)行初始化。
從結(jié)果上看:繼承性
子類繼承父類以后,就獲取了父類中聲明的屬性或方法。
創(chuàng)建子類的對象,在堆空間中,就會加載所父類中聲明的屬性。
從過程上看:
當(dāng)我們通過子類的構(gòu)造器創(chuàng)建子類對象時(shí),我們一定會直接或間接的調(diào)用其父類的構(gòu)造器,進(jìn)而調(diào)用父類的父類的構(gòu)造器,…直到調(diào)用了java.lang.Object類中空參的構(gòu)造器為止。正因?yàn)榧虞d過所的父類的結(jié)構(gòu),所以才可以看到內(nèi)存中父類中的結(jié)構(gòu),子類對象才可以考慮進(jìn)行調(diào)用。
強(qiáng)調(diào)說明:
雖然創(chuàng)建子類對象時(shí),調(diào)用了父類的構(gòu)造器,但是自始至終就創(chuàng)建過一個(gè)對象,即為new的子類對象。
藍(lán)藍(lán)設(shè)計(jì)的小編 http://www.jghy.net