Tipo estrecho de propiedad en subclase

Hoy me encontré con un comportamiento extraño que no esperaba que el compilador de Objective-C permitiera.

En UITableViewCell, hay una propiedad llamada imageView del tipo UIImageView. Subclasificé UITableViewCell y sobrescribí imageView, excepto que lo hice del tipo AWImageView donde AWImageView es una subclase de UIImageView. Pensé que no compilaría, pero lo hace. Todo funciona bien. Me sorprendió mucho el comportamiento.

¿Está oficialmente limitado el tipo de propiedad en la subclase? ¿O es esto un error en el compilador de Objective-C que lo hizo funcionar?

Respuestas a la pregunta(2)

Su respuesta a la pregunta