OC分类


为现有类(一般是系统类)扩展一些新的方法,而不通过子类继承

 
 
 
以上为例,自动创建出两个文件

NSString+AddMethod.h

 
1 #import <Foundation/Foundation.h>
2  
3 
4 @interface NSString (AddMethod)
5  
6 
7 @end

 

NSString+AddMethod.m

1 #import "NSString+AddMethod.h"
2 
3  
4 
5 @implementation NSString (AddMethod)
6 
7  
8 
9 @end

 

定义类别的语法

定义类别时注意
  • 定义类别时使用的类名必须是已有的类,且定义的类别名必须是该项目中没有的类
  • 类别中只能定义方法,不能定义成员变量
 
写在后面的话
 
使用类别一般是为现有类扩展一些新方法,虽然类别可以重写原有类中的方法,但通常利用继承来实现重写
 
通过类别为指定类添加新方法后,该方法不仅影响NSString类,还会影响NSString类的所有子类,每个子类都会获取类别扩展的方法
 
可根据需要为一个类定义多个类别,不同类别都可对原有类增加方法定义
 
使用类别处了为 现有类扩展一些新方法外,另一个作用是为类中方法分门别类
 
 
 
 
 
 
链接
OC编程 / OC分类-示例
OC编程 / OC分类-定义多个类别 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
posted @ 2015-09-08 21:11  merry_hj  阅读(186)  评论(0)    收藏  举报