33. Чей метод вызовется, если массив имеет тип класса-родителя, а внутри лежат экземпляры наследников?Код
class Shape {
func draw() {
print("shape")
}
}
class Circle: Shape {
override func draw() {
print("circle")
}
}
class Square: Shape {
override func draw() {
print("square")
}
}
let shapes: [Shape] = [Circle(), Square()]
for shape in shapes {
shape.draw()
}Дополнительные вопросы
1. Как называется такая возможность языка?