溫馨提示×

java中如何實現(xiàn)多態(tài)

小億
77
2024-01-17 04:46:51
欄目: 編程語言

在Java中,實現(xiàn)多態(tài)需要滿足以下條件:

  1. 存在繼承關系:子類繼承父類或實現(xiàn)接口。
  2. 存在方法重寫:子類重寫父類(或接口)中的方法。
  3. 父類(或接口)類型的引用指向子類的對象。

以下是實現(xiàn)多態(tài)的示例代碼:

// 定義一個父類
class Animal {
    public void sound() {
        System.out.println("動物發(fā)出聲音");
    }
}

// 定義兩個子類,分別繼承父類
class Cat extends Animal {
    @Override
    public void sound() {
        System.out.println("貓發(fā)出喵喵的聲音");
    }
}

class Dog extends Animal {
    @Override
    public void sound() {
        System.out.println("狗發(fā)出汪汪的聲音");
    }
}

public class PolymorphismExample {
    public static void main(String[] args) {
        // 父類類型的引用指向子類的對象
        Animal animal1 = new Cat();
        Animal animal2 = new Dog();
        
        // 調用方法,實現(xiàn)多態(tài)
        animal1.sound(); // 輸出:貓發(fā)出喵喵的聲音
        animal2.sound(); // 輸出:狗發(fā)出汪汪的聲音
    }
}

在上述示例代碼中,Animal是父類,Cat和Dog分別是Animal的子類。通過Animal類型的引用指向Cat和Dog的對象,實現(xiàn)了多態(tài)。通過調用sound()方法,由于Animal類型引用指向的是實際對象的類型,因此會自動調用對應子類的sound()方法。輸出結果會根據(jù)實際對象的類型而不同,表現(xiàn)出多態(tài)的特性。

0