Categore:
iOS可以对已有的类再添加方法,此功能针对系统类库和没有原码的类特别有用. 比如我们可以扩展NSString类,使它有我们自定义的方法.
直接上码:
NSString+test.h文件如下:
#import <Foundation/Foundation.h>
@interface NSString (test)//注意这里写着test,结合文件命名,你懂的.
//添加自己的新方法
- (void)base64String;
@end
NSString+test.m
#import "NSString+test.h"
@implementation NSString (test)
//实现新方法
- (void)base64String{
}
@end
使用时直接引用头文件:
NSString+test.h
就可以有NSString类的功能并且加多一个自定义的方法,.Extensions:
iOS对已有类添加新的变量,就是Extensions,我个人理解,它可以说是一个变种的categore.原因见代码.
同样我们也是对NSString类添加一个新的变量.
新建一个文件:NSString_test.h,注意没有新建.m文件.
#import <Foundation/Foundation.h>
@interface NSString ()//注意这里为空
@property (nonatomic, retain) NSString *base64;
@end
使用时,直接在自己想用的地方引用NSString_test.h,就可以有新的变量来用了.