Junior — Middle
¿Se puede implementar la herencia múltiple en el lenguaje Swift?
sobes.tech AI
Respuesta de la IA
En el lenguaje Swift no se soporta la herencia múltiple de clases, es decir, una clase solo puede heredar de una superclase.
Sin embargo, Swift soporta protocolos, que permiten implementar funcionalidades similares a la herencia múltiple mediante la implementación de varios protocolos.
Ejemplo:
protocol Flyable {
func fly()
}
protocol Swimmable {
func swim()
}
class Animal {
func eat() {
print("Comiendo")
}
}
class Duck: Animal, Flyable, Swimmable {
func fly() {
print("Volando")
}
func swim() {
print("Nadando")
}
}
let donald = Duck()
donald.eat() // Comiendo
donald.fly() // Volando
donald.swim() // Nadando
De esta manera, para ampliar la funcionalidad se usa la herencia de una clase y la implementación de varios protocolos.