OC----Category语法

Category(分类)语法
  • OC提供了一种与众不同的方式—Category,可以动态的给已经存在的类添加新的行为(方法),例如Student类中已经有了test类,但是你又想不改变student类的基础上动态的添加一个新方法,不能添加成员变量。
  • 这样可以保证类的原始设计规模较小,功能增加时再逐步扩展
  • 使用Category对类进行扩展时,不需要创建子类
  • Category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的分类文件中
 
创建一个Category类之后,.m文件内容如下:
复制代码
#import “Student+Test.h”

//()代表这是一个分类
//()中的Test代表着分类的名字 @implementation Student (Test) @end
复制代码
 
Category的使用场景
  • 在定义类的某些情况下(例如需求变更),你可能想要为其中的某个或几个类中添加新的方法
  • 一个类中包含了许多不同种类的方法需要实现,而这些方法需要不同团队的成员实现
  • 在使用基础类库的类时,有可能希望这些类实现一些自己需要的方法,比如写个NSString+JSON.h,为NSString这个类拓展一些解析JSON的方法
 
也可以在同一个.h文件中写入两个@interface实现category的分类功能,例如
复制代码
#import <Foundation/Foundation.h>

@interface Student:NSObject

@end

//这个@interface实现了Category的功能 @interface Student (Test) @end
复制代码

转载于:https://www.cnblogs.com/hqzxbb/p/4383746.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值