三十九、类别 和 协议(三)协议
来源:互联网 发布:数据库exists和in 编辑:程序博客网 时间:2024/05/21 10:12
协议 指的是 一系列措施,这些措施 可以适用于 不同类型的物件。一项协议中的措施 并没有 相应的具体内容。如果 你 希望 一项协议中的措施 适用于 某类物件,那么 我们 就可以说 这类物件 遵循 这项协议。如果 你 让 一类物件 遵循 一项协议,那么 你 就要为 这项协议中的措施 编写 相应的具体内容。
要拟 一份协议 非常 容易,只需要用到 @protocol命令。而 在@protocol命令后面 需要写清楚 协议的名称。最后 还要列举出 这份协议所包含的措施。如果 你 使用 基础框架,你 就会找到 不少协议。比如 如果 你的物件 支持 拷贝,那么 这类物件 就必须遵循 NSCopying这份协议。NSCopying这份协议 位于 NSObject.h这个文件,协议的内容 是 这样的:
如果 你的某类物件 遵循 NSCopying这项协议,那么 你 就必须编写 copyWithZone:这项措施的相应内容。而 下面这行语句
就是告诉 编译器 AddressBook这类物件 遵循 NSCopying这份协议。于是 编译器 希望 在AddressBook这类物件的实施部分 找到 copyWithZone:这项措施的具体内容。
如果 一类物件 遵循 多项协议,那么 也很 简单,只要这样 就可以了:
两项协议名称之间 需要用 逗号 隔开。
如果 你自己 起草 一份协议的话,你 并不需要 编写 这份协议所包含的措施的具体内容。如果 其他开发者 打算遵循 这份协议,那么 这份协议所包含的措施的具体内容 则 由他们 来编写。
如果 某类物件 遵循 一项协议的话,那么 包含在这类物件中的其他类型的物件 都会遵循 这项协议。
- 三十九、类别 和 协议(三)协议
- 三十七、类别 和 协议(一)类别
- 四十、类别 和 协议(四)协议
- 类别和协议
- 三十八、类别 和 协议(二)关于 类别
- category (类别) 和 protocol (协议)
- 四十一、类别 和 协议(五)非正式协议
- 协议(delegate)和类别(category)
- Objective-C类别和协议
- 类别(Category)的作用(三)---添加非正式协议
- Objective-C category (类别) 和 protocol (协议)
- 四十二、类别 和 协议(六)合成物件
- Objective-C中的类别和非正式协议
- Objective-C中的类别和非正式协议
- objective-c中的协议和类别
- 类别,非正式协议,正式协议
- 类别(类目),延展,协议
- 类别扩张协议委托
- 三十八、类别 和 协议(二)关于 类别
- 木偶娃娃的伤感日志推荐:只是一场赢不了的游戏
- hdu 1251统计难题
- Thumb指令与ARM指令的时间效率和空间效率关系
- cvPolyLine与cvFillPoly的用法
- 三十九、类别 和 协议(三)协议
- sprintf
- android:shape的使用
- 浅析android UI 定制
- 2.2、线性表的顺序表示和实现
- 四十、类别 和 协议(四)协议
- Kinect 深度测量原理
- 解决Oracle ORA-12505, TNS:listener does not currently know of SID given in connect
- 四十一、类别 和 协议(五)非正式协议