码迷,mamicode.com
首页 > 其他好文 > 详细

OC分类

时间:2015-09-08 21:51:34      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:


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

 
技术分享 
技术分享 
以上为例,自动创建出两个文件

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分类-定义多个类别 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

OC分类

标签:

原文地址:http://www.cnblogs.com/merry-hj/p/4792937.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!