1. JAVA子類繼承了父類,那麼子類怎麼調用父類的方法
對於已覆蓋的方法來說,例如Child是Parent的子類,而且,Child和Parent都有個toString()方法,也就是說,Child覆蓋Parent的toString()方法。如果child要調用Parent的toString()方法,只需要把child強制轉換為Parent就可以,也就是(Parent)child.toString(),這樣就是調用其父類的toString()方法。如果不是覆蓋的,就不用強制轉換,直接調用就可以。
2. 如何在java中子類中父類的對象如何調用父類的方法
對於有繼承關系的類,子類可以通過這個關鍵字調用父類中的方法。
比如:super.query();
此句話的意思是調用父類中的非私有方法query。
一般的用super關鍵字,調用類中的父類中重載構造方法。
比如:父類有個構造方法public A(){},同時又寫了一個重載的構造方法public A(String name);那麼,在子類中可以使用super(name)指明調用父類的哪個構造方法進行實例化父類對象。
大概就是這樣的!
3. Java 子類繼承父類 子類實例如何調用父類的方法或成員
class Fathor
{
public void test01()
{
System.out.println("test01");
}
}
class Son extends Fathor
{
void test02()
{
this.test01();
}
}
class test
{
public static void main(String[] args)
{
Son son = new Son();
son.test01();
son.test02();
}
}
繼承後子類包含了父類的方法,直接調用就行了,不包括私有成員。你自己試一下就知道了。
4. 子類怎樣調用父類方法
publicclassSuperTest{
publicstaticvoidmain(String[]args){
Parentc=newParent();
c.addAll();
}
}
classParent{
publicvoidadd(){
System.out.println("Aadd...");
}
publicvoidaddAll(){
System.out.println("AaddALL...");
add();
//在父子類之間,如果在父類中使用this關鍵字,那麼運行子類時如果走到this行,指的是子類而不是父類。
//誰調用,this就是指誰
System.out.println(this.getClass());
}
}
classChildextendsParent{
@Override
publicvoidadd(){
//TODOAuto-generatedmethodstub
System.out.println("Badd...");
super.add();
}
@Override
publicvoidaddAll(){
//TODOAuto-generatedmethodstub
System.out.println("BaddALL...");
super.addAll();
}
}
最後輸出的結果是
BaddALL...
AaddALL...
Badd...
Aadd...
按我的理解,super.addAll()方法調用來Parent中的addAll(),而Parent中的addAll()調用了add()。這里的add最後調用的是Child的add(),既然是super.addAll(),為何最後竟然調用的是子類的add()方法。。。
這里涉及到的問題是當子類調用super走到父類的方法中,這時的對象this到底是指Child子類還是父類Parent?
正確答案是子類,this.add();其中的this是指當前對象,也就是Childc=newChild();中的c.
因此雖然是在父類中執行的add方法,但實際上執行的是子類的add方法
在父類的add 方法中
System.out.println(this.getClass());
結果是Child而不是Parent!
5. C++如何調用父類的方法
C++通過子類調用父類函數fun();
子類和父類函數名一樣的函數fun,如果參數不一樣,不管加不加virtual,當子類調用fun()時,會先在子類中找,找不到會報錯。
C++是C語言的繼承,它既可以進行C語言的過程化程序設計,又可以進行以抽象數據類型為特點的基於對象的程序設計,還可以進行以繼承和多態為特點的面向對象的程序設計。C++擅長面向對象程序設計的同時,還可以進行基於過程的程序設計,因而C++就適應的問題規模而論,大小由之。
C++不僅擁有計算機高效運行的實用性特徵,同時還致力於提高大規模程序的編程質量與程序設計語言的問題描述能力。
(5)如何調用子類的屬性和父類的方法擴展閱讀:
C++語言特點:
1、支持繼承和重用
在C++現有類的基礎上可以聲明新類型,這就是繼承和重用的思想。通過繼承和重用可以更有效地組織程序結構,明確類間關系,並且充分利用已有的類來完成更復雜、深入的開發。新定義的類為子類,成為派生類。它可以從父類那裡繼承所有非私有的屬性和方法,作為自己的成員。
2、支持多態性
採用多態性為每個類指定表現行為。多態性形成由父類和它們的子類組成的一個樹型結構。在這個樹中的每個子類可以接收一個或多個具有相同名字的消息。當一個消息被這個樹中一個類的一個對象接收時,這個對象動態地決定給予子類對象的消息的某種用法。多態性的這一特性允許使用高級抽象。
繼承性和多態性的組合,可以輕易地生成一系列雖然類似但獨一無二的對象。由於繼承性,這些對象共享許多相似的特徵。由於多態性,一個對象可有獨特的表現方式,而另一個對象有另一種表現方式。
參考資料來源:網路-C++