Category在我们的代码中其实可以有很普遍的应用,只是很多人并没有感觉到它的优势,现在我就只讲一点,关于Category的用法:

我们通常定义变量和声明方法的时候,喜欢把这些东西写到.h文件中去;这样其实就造成一个不好的效果,别人是可以看到你的变量和方法的,当然,一般情况,写在.h文件里并没有什么大得问题,不过有时候,如果你不想别人知道你定义的变量和方法,就可以用Category来满足你的隐私欲;只需要在.m文件写一个Category,把你所有的变量和方法写到Category里面,跟写到头文件里没有一点的不同;

@interface ViewController (这里可以为空或者写上Category的名字)
{
    NSString *str = _name;
}

@property (strong, nonatomic) EAGLContext *context;
@property (nonatomic,retain) NSString* documentsPath;
@property (nonatomic,retain) NSString* bundlePath;
@property (nonatomic,retain) NSMutableArray* touches;
@property (nonatomic,retain) AudioEngine* audioEngine;
@property (nonatomic,retain) iCadeReaderView *iCadeView;

@end

上面这个就是载入在类里面的Category,当然,人们都习惯从新去建一个Category,去写一些私有的方法,不过说实在的,在.m文件里写方法是完全没有问题的,除非你觉得写的很乱;

什么是Category相关推荐

  1. oc 协议 回调 静态成员_OC底层原理探究:Category、关联对象和block本质

    1.分类Category的使用 // 给MJPerson类添加分类 @interface MJPerson : NSObject - (void)run; @end@implementation MJ ...

  2. iOS Category小举例

    (一)Category作用:Category可以向已存在的类添加新的方法,或者覆盖原来类中已经存在的方法,从而扩展已有类(在Java中为了实现类似功能,一般是创建子类) (二)Category例子:使 ...

  3. android之android.intent.category.DEFAULT的用途和使用

    1.要弄清楚这个问题,首先需要弄明白什么是implicit(隐藏) intent什么是explicit(明确) intent. Explicit Intent明确的指定了要启动的Acitivity , ...

  4. 【多标签文本分类】HFT-CNN: Learning Hierarchical Category Structure for Multi-label Short Text Categorization

    ·阅读摘要:   本文提出结合基于CNN微调的HFT-CNN模型来解决层级多标签文本分类问题.   [1] HFT-CNN: Learning Hierarchical Category Struct ...

  5. SAP RETAIL 根据Merchandise Category Hierarchy Level查询物料清单

    SAP RETAIL 根据Merchandise Category Hierarchy Level查询物料清单 在SAP RETAIL系统中,我们可以维护Material group(零售系统里称之为 ...

  6. SAP Retail 事务代码WSOA1创建Assortment不能选Assortment Category !

    SAP Retail 事务代码WSOA1创建Assortment不能选Assortment Category ! 执行事务代码WSOA1,进入如下界面, 手工输入Assortment号码,回车,进入如 ...

  7. SAP MM PO Item Category 内部code的用处?

    SAP MM PO Item Category 内部code的用处? 这个内部号码在Classification里会使用到.如果你想启用审批策略,并且依赖ITEM CATEGORY,你就必须在特征值里 ...

  8. objc’s category and class cluster 详解

    objective-c有一个feature,可以给已有的类添加方法,而无需改变类名.传统的语言可能需要通过继承或者组合实现,但是obj-c只需要用这个feature就好,这就是category. Ca ...

  9. 给UIScrollView添加category实现UIScrollView的轮播效果

    给UIScrollView添加category实现UIScrollView的轮播效果 大家都知道,要给category添加属性是必须通过runtime来实现的,本教程中给UIScrollView添加c ...

  10. Category中实现了原始类实例变量的get方法导致的警告

    开发任务完成了,就把项目中的警告清理了一下,最后就剩下这一个警告了. 警告信息 ld: warning: instance method 'alertView' in category from /U ...

最新文章

  1. android notification 定时显示,Android编程使用Service实现Notification定时发送功能示例...
  2. Nodejs+express+jade配置
  3. Android Studio 模拟器 不要皮肤,效果更好
  4. android优化最强软件,最强大的安卓优化工具诞生,让手机流畅度提升75%
  5. 创建故障转移群集,LiveMigration系列之六
  6. ANSYS——常见梁的后处理方法(弯曲应力、弯矩、轴力等的显示)
  7. 一般图带权多重匹配(欧拉图+最小费用流)
  8. 【CentOS 7笔记11】,目录权限,所有者与所有组,隐藏权限#171022
  9. 泰晤士“中国学科评级”结果出炉,中国数学学科评级榜单公示!
  10. 不重叠的线段(51Nod-1133)
  11. node.js JavaScript 严格模式
  12. JVM初学之类的加载过程
  13. 三星Galaxy A80首款保护壳曝光:配件厂商这样解难题
  14. 计算机基础-计算机系统的安装
  15. 嵌入式实时操作系统及应用开发(第三版)罗蕾主编光盘镜像
  16. 我经历的IT公司面试及离职感受
  17. 齐岳|聚乙二醇-四氧化三铁-二氢卟吩纳米复合物Fe3O4-PEG-Ce6|肝靶向功能的四氧化三铁Fe3O4纳米粒子
  18. 实训日志03-学生信息管理系统功能模块(增加,修改,删除,查找)
  19. JavaScript实现加密与解密详解
  20. 浅析云原生模型推理服务框架KServe

热门文章

  1. 警告!来历不明的疫情邮件或许是黑客陷阱
  2. NYOJ-兔子的烦恼(二)
  3. photoshop 高手之路
  4. 使用joda_time计算两时间的月数差,天数差
  5. PADS(二)更多使用和实战总结
  6. 12c oracle 修改内存_Oracle 12C 内存数据库测试
  7. U盘制作Ubuntu系统启动盘的官方推荐软件
  8. 征服Java面试官!为什么@Value可以获取配置中心的值?感悟分享
  9. 关键词分词工具_关键词在SEO推广中的重要作用
  10. oracle查询远程视图进行insert语句报错:ORA-00600: 错误 [qerrmOFBu1], [24347], []