Узкий тип имущества в подклассе

Сегодня я столкнулся со странным поведением, которое я не ожидал, что компилятор Objective-C позволит.

В UITableViewCell есть свойство с именем imageView типа UIImageView. Я подкласс UITableViewCell и перезаписал imageView, за исключением того, что я сделал его типа AWImageView, где AWImageView является подклассом UIImageView. Я думал, что это не скомпилируется, но это так. Все работает просто отлично. Я был очень шокирован поведением.

Разрешено ли официально сужение типа имущества в подклассе? Или это ошибка в компиляторе Objective-C, которая заставила его работать?

Ответы на вопрос(2)

Ваш ответ на вопрос