在Kotlin中,接口實現多態與在Java中類似。你可以通過定義一個接口,然后創建多個實現該接口的類,每個類都有自己的實現。在運行時,可以根據需要選擇合適的實現。這里有一個簡單的例子來說明如何在Kotlin中實現接口多態:
interface Animal {
fun makeSound(): String
}
class Dog : Animal {
override fun makeSound(): String {
return "Woof!"
}
}
class Cat : Animal {
override fun makeSound(): String {
return "Meow!"
}
}
Animal
類型的參數,并調用其makeSound()
方法:fun playSound(animal: Animal) {
println(animal.makeSound())
}
Dog
和Cat
對象,并調用playSound()
函數:fun main() {
val dog = Dog()
val cat = Cat()
playSound(dog) // 輸出 "Woof!"
playSound(cat) // 輸出 "Meow!"
}
在這個例子中,playSound()
函數接受一個Animal
類型的參數,這使得它可以接受任何實現了Animal
接口的類。這就是Kotlin中接口實現多態的方式。