Junior — Middle
Peut-on implémenter l'héritage multiple dans le langage Swift ?
sobes.tech IA
Réponse de l'IA
Dans le langage Swift, l'héritage multiple de classes n'est pas supporté, c'est-à-dire qu'une classe ne peut hériter que d'une seule superclasse.
Cependant, Swift supporte les protocoles, qui permettent d'implémenter des fonctionnalités similaires à l'héritage multiple en implémentant plusieurs protocoles.
Exemple :
protocol Flyable {
func fly()
}
protocol Swimmable {
func swim()
}
class Animal {
func eat() {
print("Manger")
}
}
class Duck: Animal, Flyable, Swimmable {
func fly() {
print("Voler")
}
func swim() {
print("Nager")
}
}
let donald = Duck()
donald.eat() // Manger
donald.fly() // Voler
donald.swim() // Nager
Ainsi, pour étendre la fonctionnalité, on utilise l'héritage d'une classe et l'implémentation de plusieurs protocoles.