@protocol UserDelegate<NSObject>
- (void)doSomething;
@end
@interface User:NSObject
@property (nonatomic,weak) id<UserDelegate> delegate;
@end
#import <Foundation/Foundation.h>
#import "User.h"
@interface APP : NSObject<UserDelegate>
@property (nonatomic,strong) User *user;
@end
if (user.delegate && [user.delegate respondsToSelector:@selector(doSomething)]) {
[user.delegate doSomething];
}
Effective+Objective-C 2.0 编写高质量iOS与OS X代码的52个有效方法