父類對象可以調用子類中的方法嗎?
不能。
1.新建一個子類對象時,它首先執行它父類的構造方法然后再執行子類的構造方法。
2.我們new一個子類對象賦給父類(父類的引用指向了子類的對象,也就是說css里說的多態,),父類對象不可以調用子類的方法,但如果子類重寫了父類的某個方法,則當時父類調用的是子類方法的內容。
equals是什么方法?
equals是Object類的方法,所有Java類都會繼承equals方法,默認繼承的equals方法比較的是兩個引用是否指向堆電源中同一個對象地址。
1、Integer類的equals方法
2、String類的equals方法
3、自定義對象的equals方法
要判斷兩個對象的內容是否相等,不要自己寫方法去判斷,而是應該重寫父類的equals方法
編寫一個Java應用程序,程序包括3個類:A類、B類和主類E?
classA{inta15;
voidmA(){();}
}
classBextendsA{
intb16;
inta17;
voidmB(){(B.mB);}
voidmA(){();}
}
publicclassE{
publicstaticvoidmain(String[]args){
BbnewB();
Aab;
(b.a1b.a1);
(b.c3b.a3);
();
b.mB();
(a.a1a.a1);
();
}
}
Java中子類能夠繼承父類的private屬性或方法嗎?
子類繼承父類,子類擁有了父類的所有屬性和方法。
程序驗證,父類的私有屬性和方法子類是無法直接訪問的。當然私有屬性可以通過public修飾的getter和setter方法訪問到的,但是私有方法不行。
假設:子類不能夠繼承父類的私有屬性和方法
那么:分析主板后,會發現,當一個子類被實例化的時候,默認會先調用父類的構造方法對父類進行初始化,即在機箱中創建一個父類對象,然后再父類對象的外部放上子類獨有的屬性,兩者合起來成為一個子類的對象。
所以:子類繼承了父類的所有屬性和方法或子類擁有父類的所有屬性和方法是對的,只不過父類的私有屬性和方法,子類是無法直接訪問到的。即只是擁有,但是無法使用。