Это называется полиморфизмом . Во время выполнения правильный метод будет вызываться в соответствии с «реальным» типом a1
, который в этом случае является B
.
Поскольку wikipedia делает это красиво:
. Первичное использование полиморфизма в промышленности (теория объектно-ориентированного программирования) - это способность объектов, принадлежащих к разным типам, реагировать на вызовы метода, поля или свойств с тем же именем, каждый из которых соответствует соответствующему типу поведения , Программисту (и программе) не обязательно знать точный тип объекта заранее, и поэтому точное поведение определяется во время выполнения (это называется связыванием позднее или динамической привязкой).
blockquote >