A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 泠风小和 中级黑马   /  2014-9-1 10:37  /  1327 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

昨天闲翻笔记,无意中看到了类扩展,觉得跟分类有些关系。开始看视频的时候没太注意,忘记写到word文档里。
以后有补充会发新帖

  
  
Category 分类
Class Extension 类扩展
作用
在不修改原来类的内容的基础上,给某个类扩充一些方法。
一般用来扩充私有成员变量、@property属性、方法等
使用方法
1、声明
  
@interface 类名 (分类名称)  // @interface Person (ST)
  
  
@end
  
  
2、实现
  
@implementation 类名 (分类名称)
  
  
@end
@interface 类名 ()
  
{
  
    // 成员变量
  
}
  
// 方法声明
  
@end
使用注意
1、分类只能增加方法,不能增加成员变量
  
2、分类方法实现中可以访问原来类中声明的成员变量
  
3、分类可以重新实现原来类中的方法,但是会覆盖掉原来的方法,会导致原来的方法没法再使用
  
4、方法调用的优先级:分类(最后参与编译的分类优先) --> 原来类  --> 父类
1、不需要创建新文件,直接在原类的.m文件中声明和实现
  
2、一般用来扩充私有成员变量、@property属性、方法等
  
3、所谓私有是仅.m通过[self 方法]访问,不能在外部通过[对象 方法]访问


1 个回复

倒序浏览
嗯,好东西!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马