小編給大家分享一下建立java子類的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
建立子類過程:Java在構(gòu)造函數(shù)中,第一行會(huì)先調(diào)用父類中構(gòu)造函數(shù)進(jìn)行初始化。父類初始化完畢后,再對子類的屬性進(jìn)行顯示初始化。進(jìn)行子類構(gòu)造函數(shù)的特定初始化。初始化完畢后,將地址值賦值給引用變量Person p。
Person p = new Person();
1,JVM會(huì)讀取指定的路徑下的Person.class文件,并加載進(jìn)內(nèi)存,并會(huì)先加載Person的父類(如果有直接的父類的情況下).
2,在堆內(nèi)存中開辟空間,分配地址。
3,并在對象空間中,對對象中的屬性進(jìn)行默認(rèn)初始化。
4,調(diào)用對應(yīng)的構(gòu)造函數(shù)進(jìn)行初始化。
5,在構(gòu)造函數(shù)中,第一行會(huì)先調(diào)用父類中構(gòu)造函數(shù)進(jìn)行初始化。
6,父類初始化完畢后,再對子類的屬性進(jìn)行顯示初始化。
7,進(jìn)行子類構(gòu)造函數(shù)的特定初始化。
8,初始化完畢后,將地址值賦值給引用變量Person p.
例:
class Fu { Fu() { super(); show(); //通過結(jié)果可以看出,子父類有同名show方法,調(diào)用的是子類show方法。 return; } void show() { System.out.println("fu show"); } } class Zi extends Fu { int num = 8; Zi() { super(); //-->通過super初始化父類內(nèi)容時(shí),子類的成員變量并未顯示初始化。等super()父類初始化完畢后, //才進(jìn)行子類的成員變量顯示初始化。 System.out.println("zi cons run...."+num); return; } void show() { System.out.println("zi show..."+num); } } class ExtendsDemo5 { public static void main(String[] args) { Zi z = new Zi(); z.show(); } }
看完了這篇文章,相信你對建立java子類的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
新聞標(biāo)題:建立java子類的方法-創(chuàng)新互聯(lián)
文章分享:http://www.rwnh.cn/article34/dosppe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、建站公司、手機(jī)網(wǎng)站建設(shè)、App設(shè)計(jì)、外貿(mào)建站、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容