Junior — Middle
¿Cómo se logra la herencia múltiple de clases o protocolos en el lenguaje Swift?
sobes.tech AI
Respuesta de la IA
En Swift, una clase solo puede heredar de una superclase, es decir, no se soporta la herencia múltiple de clases. Sin embargo, para lograr un efecto similar, se utiliza la herencia de una clase y la implementación de múltiples protocolos. Los protocolos en Swift definen un conjunto de requisitos (métodos, propiedades) que una clase, estructura o enumeración debe implementar. De esta manera, una clase puede heredar comportamiento de una superclase y al mismo tiempo cumplir con varios protocolos, lo que permite combinar funcionalidades.
Ejemplo:
protocol Drivable {
func drive()
}
protocol Flyable {
func fly()
}
class Vehicle {
func start() {
print("Vehículo iniciado")
}
}
class FlyingCar: Vehicle, Drivable, Flyable {
func drive() {
print("Conduciendo en la carretera")
}
func fly() {
print("Volando en el cielo")
}
}
let myFlyingCar = FlyingCar()
myFlyingCar.start() // Vehículo iniciado
myFlyingCar.drive() // Conduciendo en la carretera
myFlyingCar.fly() // Volando en el cielo
De esta forma, la herencia múltiple se logra mediante la herencia de una clase y la implementación de múltiples protocolos.