类目:为已知的类增加新的方法;
一、类目:1. 类目方法的应用:
对现有类进行扩展:比如:可以扩展Cocoa touch框架中的类,在类目中增加的方法会被子类继承,而且在运行时跟其他的方法没有区别。作为子类的替代手段:不需要定义和使用一个子类,可以通过类目直接向已有的类里增加方法。对类中的方法归类:利用catigory把一个庞大的类划分为小块来分别进行开发,从而更好地对类中的方法进行更新和维护。2. 类目方法的局限性:
无法向类目中添加新的实例变量,类目没有位置来容纳实例变量。如果想增加类的实例变量,只能通过定义子类的方式。如若,在类目中覆盖先后类的方法。这样会引起super消息的断裂,因为类目总的方法具有更高的优先级,因此,一般不要覆盖现有类中的方法。
3.类目的定义:
类目的命名规则:类名+扩展方法,如“NSString+Revert”。 类目的接口声明与类的定义十分相似,但类目不继承父类,只需要带有一个括号,表明该类目的主要用途。
NSString+myobc.h文件:
#import <Foundation/Foundation.h>
@interface NSString (myobc)
- (void)test;
@end
NSString+myobc.m文件:
#import "NSString+Revert.h"
@implementation NSString (myobc)
- (void)test{ } @end
互联网的一点事是一个发布最新互联信息平台 www.yidin.net