Tipo estreito de propriedade na subclasse

Hoje me deparei com um comportamento estranho que eu não esperava que o compilador Objective-C permitisse.

No UITableViewCell, existe uma propriedade denominada imageView do tipo UIImageView. Subclassei o UITableViewCell e sobrei o imageView, exceto que o fiz do tipo AWImageView, no qual o AWImageView é uma subclasse do UIImageView. Eu pensei que não iria compilar, mas faz. Tudo funciona bem. Fiquei muito chocado com o comportamento.

Está estreitando o tipo de propriedade na subclasse permitido oficialmente? Ou isso é um bug no compilador Objective-C que fez funcionar?

questionAnswers(2)

yourAnswerToTheQuestion