Junior — Middle
Como é alcançada a herança múltipla de classes ou protocolos na linguagem Swift?
sobes.tech IA
Resposta da IA
Em Swift, uma classe só pode herdar de uma superclasse, ou seja, a herança múltipla de classes não é suportada. No entanto, para alcançar um efeito semelhante, usa-se herança de uma classe e implementação de múltiplos protocolos. Os protocolos em Swift definem um conjunto de requisitos (métodos, propriedades) que uma classe, estrutura ou enumeração deve implementar. Assim, uma classe pode herdar comportamento de uma superclasse e ao mesmo tempo cumprir vários protocolos, permitindo combinar funcionalidades.
Exemplo:
protocol Drivable {
func drive()
}
protocol Flyable {
func fly()
}
class Vehicle {
func start() {
print("Veículo iniciado")
}
}
class FlyingCar: Vehicle, Drivable, Flyable {
func drive() {
print("Dirigindo na estrada")
}
func fly() {
print("Voando no céu")
}
}
let myFlyingCar = FlyingCar()
myFlyingCar.start() // Veículo iniciado
myFlyingCar.drive() // Dirigindo na estrada
myFlyingCar.fly() // Voando no céu
Dessa forma, a herança múltipla é alcançada através da herança de uma classe e implementação de múltiplos protocolos.