¿Cómo puedo hacerlo para que cualquier clase que herede de mi clase base se vea obligada a anular un método específico? No quiero usar un protocolo, porque eso no automatizaría este comportamiento.Forzar clases secundarias para reemplazar el método
@interface MyBaseClass : NSObject
{
}
- (void)performAnAction;
@end
@implementation MyBaseClass
- (void)performAnAction
{
@throw([NSException exceptionWith...]);
}
@end
Entonces, ¿no es posible mostrar una advertencia? – aryaxt
No. Solo documente la clase apropiadamente para que sea obvio que este método debe ser anulado. –
Esto no funcionará si la subclase llama a [super performAction]; –