Ⅰ java 子類繼承父類 可以直接調用父類屬性和方法 為什麼還要用多態
舉個例子:
父類:A
子類:A1
子類:A2
父類中定義了一個方法method:,類A1和類A2有不同的實現,這是代碼中定義一個類A,那麼可以直接調用A的a方法即可,不用關心用A1還是A2去實例化的這個A對象,這就是多態的特性
A a;
a = new A1();或a = new A2();
a.method();只要改變這個a的實例化方式,就能執行不同對象的方法。
Ⅱ java,中的子類繼承父類,子類如何調用父類的構造函數舉一個簡單的例子加註釋說明
子類無條件調用父類的無參構造函數,實例:
父類:
package com.test;
public class TestFatherClass {
private String name="abc";
TestFatherClass(){
System.out.println("1、這是父類的無參構造函數");
}
TestFatherClass(String a){
System.out.println("2、這是父類的有參構造函數");
}
}
子類:
package com.test;
public class TestChildClass extends TestFatherClass{
TestChildClass(){
System.out.println("3、這是子類的無參構造函數");
}
TestChildClass(String str){
System.out.println("4、這是子類的有參構造函數");
}
public static void main(String[] args) {
System.out.println("實例化對象時:(無參)");
TestChildClass test = new TestChildClass();
System.out.println("實例化對象時:(有參)");
TestChildClass test2 = new TestChildClass("adad");
}
}
輸出結果:
Ⅲ java實現子類調用父類的方法java實現子類調用父類的方法嗎
publicclass父類
{
publicstaticvoidmain(String[]args)
{
System.out.println(" ==========HelloWorld!========== ");
init();
}//初始化!
privatestaticvoidinit()
{
//用子類實例調用!
newZi().show();
//用多態形式也是一樣可以滿足調用!
Fuf=newZi();
f.show();
}
}
//可以的!
classFu
{
voidshow()
{
System.out.println("父類方法..show");
}
}
classZiextendsFu
{
//這個方法,覆不覆蓋都可以!
voidshow()
{
super.show();
}
}