是的,Java中的接口(interface)可以實現多態。在Java中,多態是指允許一個對象具有多種形態。通過接口實現多態的關鍵在于定義一個通用的接口,然后讓不同的類實現這個接口。這樣,我們可以在運行時根據對象的實際類型來調用相應的方法,從而實現多態。
下面是一個簡單的示例:
// 定義一個接口
interface Animal {
void makeSound();
}
// 實現接口的類
class Dog implements Animal {
@Override
public void makeSound() {
System.out.println("Woof!");
}
}
class Cat implements Animal {
@Override
public void makeSound() {
System.out.println("Meow!");
}
}
public class Main {
public static void main(String[] args) {
// 使用接口作為方法參數,實現多態
Animal myAnimal = new Dog();
myAnimal.makeSound(); // 輸出 "Woof!"
myAnimal = new Cat();
myAnimal.makeSound(); // 輸出 "Meow!"
}
}
在這個示例中,我們定義了一個名為Animal
的接口,它有一個makeSound()
方法。然后,我們創建了兩個類Dog
和Cat
,它們都實現了Animal
接口。在main
方法中,我們使用Animal
接口作為方法參數,并將Dog
和Cat
對象分別賦值給myAnimal
變量。當我們調用myAnimal.makeSound()
時,根據對象的實際類型(Dog
或Cat
),會輸出不同的聲音("Woof!“或"Meow!”)。這就是Java接口實現多態的示例。