探索Objective - C中的类别与协议
1. 类别(Categories)
在编程过程中,我们常常会遇到需要为类添加新方法的情况。以下几种场景很常见:
- 为已有类添加特定功能 :比如在 Fraction 类中,除了已有的加法方法,还想添加减法、乘法和除法方法。
- 大型项目分工 :在大型编程项目里,团队定义一个包含众多方法的新类,不同成员负责不同功能的方法编写,例如有人负责文件系统相关方法,有人负责对象初始化等。
- 扩展库中的类 :当使用库中的类(如 Foundation 框架的 NSArray 类)时,希望该类具备某些未实现的方法。
类别为这些情况提供了实用的解决方案。类别可以将类的定义模块化,把相关方法分组,还能在不访问类的原始源代码、不创建子类的情况下扩展现有类的定义。
1.1 为Fraction类添加MathOps类别
下面我们以 Fraction 类为例,展示如何添加一个新的类别来处理四种基本数学运算。
首先是原始的 Fraction 类接口部分:
#import <Foundation/Foundation.h>
// Define the Fraction class
@interface Fraction : NSObject
{
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



