Junior — Middle
É possível implementar herança múltipla na linguagem Swift?
sobes.tech IA
Resposta da IA
Na linguagem Swift não é suportada herança múltipla de classes, ou seja, uma classe só pode herdar de uma superclasse.
No entanto, Swift suporta protocolos, que permitem implementar funcionalidades semelhantes à herança múltipla através da implementação de vários protocolos.
Exemplo:
protocol Flyable {
func fly()
}
protocol Swimmable {
func swim()
}
class Animal {
func eat() {
print("A comer")
}
}
class Duck: Animal, Flyable, Swimmable {
func fly() {
print("A voar")
}
func swim() {
print("A nadar")
}
}
let donald = Duck()
donald.eat() // A comer
donald.fly() // A voar
donald.swim() // A nadar
Assim, para expandir a funcionalidade, usa-se herança de uma classe e implementação de vários protocolos.