Categories
来源:互联网 发布:复旦大学软件学院学费 编辑:程序博客网 时间:2024/06/05 06:39
当你想要为某个 class 新增 methods,你通常会扩充(extend,即继承)它。然而这不一定是个完美解法,特别是你想要重写一个 class 的某个功能,但你却没有原始码时。Categories 允许你在现有的 class 加入新功能,但不需要扩充它。Ruby 语言也有类似的功能。
重点是 @implementation 跟 @interface 这两行:@interface Fraction (Math) 以及 @implementation Fraction (Math).(同一个 class)只能有一个同名的 category,其他的 categories 得加上不同的、独一无二的名字。
Categories 在建立 private methods 时十分有用。因为 Objective-C 并没有像 Java 这种 private/protected/public methods 的概念,所以必须要使用 categories 来达成这种功能。作法是把 private method 从你的 class header (.h) 档案移到 implementation (.m) 档案。以下是此种作法一个简短的范例。
- Categories
- Categories
- Categories
- Categories
- Iterator Categories
- Item Categories
- Filter Categories
- NSDictionary-Categories
- 12.1 Variable categories
- Categories of Quality
- Categories for Software Engineering
- Categories of Software Errors
- Categories for Computer programming
- Objective-C: Categories
- Categories in Objective-C
- 第22章 Categories
- object-c的Categories
- Objective-C:Categories
- 自尊与自强
- ext 导航树实现
- 今天正式啟動CSDN的帳號開始我的軟件學習之旅
- Java设计模式(17) -- 访问者
- How can I install Log::Log4perl on Microsoft Windows?
- Categories
- 转 对w3wp.exe的一点认识!
- NICE TO HAVE A WONDERFUL DAY
- asp.net httpModule
- 求助
- [代码]为ASP.NET网页编写嵌入式代码
- Python多线程编程
- oracle一些常用命令
- android分层学习笔记(一)