@interface NSString(AwesomeMethods)
-(NSString *) awesomeString;
@end
@implementation NSString (AwesomeMethods)
-(NSString *)awesomeString{
}
@end
好处: 如果我们没有使用类别,在需要另外实现一些相应的功能时,就需要自己不断去重构一些代码;
但是使用代理之后,我们就可以不破坏已有代码而扩展系统。
缺陷:不能为NSString类添加新的实例变量。 所以我们就需要创建新类来满足我们的一定要求。