Junior — Middle
98
Swift тілінде бірнеше мұрагерлікті жүзеге асыруға бола ма?
AI-дан жауап
sobes.tech AI
В языке Swift не поддерживается множественное наследование классов, то есть класс может наследоваться только от одного суперкласса.
Однако Swift поддерживает протоколы (protocols), которые позволяют реализовать функциональность, похожую на множественное наследование, через реализацию нескольких протоколов.
Пример:
protocol Flyable {
func fly()
}
protocol Swimmable {
func swim()
}
class Animal {
func eat() {
print("Eating")
}
}
class Duck: Animal, Flyable, Swimmable {
func fly() {
print("Flying")
}
func swim() {
print("Swimming")
}
}
let donald = Duck()
donald.eat() // Eating
donald.fly() // Flying
donald.swim() // Swimming
Таким образом, для расширения функциональности используется наследование одного класса и реализация нескольких протоколов.