Xcode 中对类进行Category
来源:互联网 发布:三年自然灾害真相 知乎 编辑:程序博客网 时间:2024/05/22 18:10
Category 类别:
创建方式: 选择objective-C File,里面FileType可以选择Empty File,Category,Protocol和Extension
Category在iOS开发中使用非常频繁。尤其是在为系统类进行拓展的时候,我们可以不用继承系统类,直接给系统类添加方法,最大程度的体现了Objective-C的动态语言特性。
#import
@interface NSObject (Category)
- (void)myMethod;
@end
这是一个最简单的Category,作用于NSObject类,给NSObject添加了一个方法。
使用Category需要注意的点:
(1) Category的方法不一定非要在@implementation中实现,也可以在其他位置实现,但是当调用Category的方法时,依据继承树没有找到该方法的实现,程序则会崩溃。
(2) Category理论上不能添加变量,但是可以使用@dynamic 来弥补这种不足。 (即运行时Runtime)
#import
static const void * externVariableKey =&externVariableKey;
@implementation NSObject (Category)
@dynamic variable;
- (id) variable
{
return objc_getAssociatedObject(self, externVariableKey);
}
- (void)setVariable:(id) variable
{
objc_setAssociatedObject(self, externVariableKey, variable, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
- Xcode 中对类进行Category
- 039.category 对类进行模块化设计
- 039.category 对类进行模块化设计
- python数据处理:对类别Category进行编码(转化为数值)
- 【iOS】Xcode中如何新建Category、Empty File、Protocol、Extension
- Xcode中创建Category、Protocol、Extension,PCH文件
- 在最新的Xcode中创建Protocol和Category文件
- [iOS]在xcode的iOS虚拟机中对BLE(蓝牙4.0)进行调试
- iOS Dev (52)在Xcode中对iOS应用进行名称修改
- [RCtank]在xcode的iOS虚拟机中对BLE(蓝牙4.0)进行调试
- objective-c中对类别category的理解
- Hibernate中对类进行查询,而不是对表查询
- 对Category进一步了解
- 如何在xcode中进行依赖性编译
- 在Xcode中进行自动化测试
- 解析在Xcode中进行条件编译
- Object-C中Category类体验
- 用Category给类中添加属性
- 写入服务器的mySql数据库汉字时乱码
- springmvc 多文件上传
- MFC中添加GIF图片
- 程序设计的几个基本原则
- LeetCodeOJ_3_m_Longest Substring Without Repeating Characters
- Xcode 中对类进行Category
- java解析xml
- 【探究】JavaScript内存回收机制
- 工厂方法(Factory Method)模式
- 围住神经猫
- [Android实例] BLE总结
- Android中Preference的使用以及监听事件分析
- Socket模型详解(转)
- 【万字总结】探讨递归与迭代的区别与联系及如何求解10000的阶层