Junior — Senior
114
Какой результат печати у Swift‑кода №26
被问到的公司:
任务条件
В этом примере демонстрируется, как работает протокольный метод с реализацией по умолчанию и его переопределение в конкретном классе. Обратите внимание, что переменная объявлена как тип протокола, а затем вызываются методы как у протокола, так и у класса‑реализации.
protocol Animal {
func say()
}
extension Animal {
func say() {
print("Animal")
}
}
class Cat: Animal {
func say() {
print("Cat")
}
}
let cat: Animal = Cat()
cat.say()
Cat().say()