From the Apple page on “Formal Protocols”:
Optional Protocol
methods can be marked as optional
using the @optional keyword.
Corresponding to the @optional modal
keyword, there is a @required keyword
to formally denote the semantics of
the default behavior. You can use
@optional and @required to partition
your protocol into sections as you see
fit. If you do not specify any
keyword, the default is @required.
@protocol MyProtocol
- (void)requiredMethod;
@optional
- (void)anOptionalMethod;
- (void)anotherOptionalMethod;
@required
- (void)anotherRequiredMethod;
@end