Objective-C Language Métodos opcionales y requeridos.


Ejemplo

Por defecto, todos los métodos declarados en un protocolo son obligatorios. Esto significa que cualquier clase que se ajuste a este protocolo debe implementar esos métodos.

También es posible declarar métodos opcionales . Estos métodos solo se pueden implementar si es necesario.

Se marcan métodos opcionales con la directiva @optional .

@protocol NewProtocol
- (void)protocolMethod:(id)argument;
@optional
- (id)anotherMethod;
@end

En este caso, solo otro anotherMethod está marcado como opcional; se supone que los métodos sin la directiva @optional son requeridos.

La directiva @optional aplica a los métodos que siguen, hasta el final de la definición del protocolo o, hasta que se encuentre otra directiva.

@protocol NewProtocol
- (void)protocolMethod:(id)argument;
@optional
- (id)anotherMethod;
- (void)andAnotherMethod:(id)argument;
@required
- (void)lastProtocolMethod;
@end

Este último ejemplo define un protocolo con dos métodos opcionales y dos métodos requeridos.