A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© D调的沉默 中级黑马   /  2014-4-21 11:35  /  1074 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 D调的沉默 于 2014-5-4 11:37 编辑

category和protocol都是给类声明一些方法,为什么要搞两种给类添加额外方法的方式,各自在什么场合下使用啊

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

2 个回复

倒序浏览
Protocol,就是一系列不属于任何类的方法列表,其中声明的方法可以被任何类实现,定义行为而不管谁去怎么实现。

Category是对一个功能完备的类的一种补充,就像是一个东西的主要基本功能都完成了,可以用category为这个类添加不同的组件,使得这个类能够适应不同情况的需求。Category既要有方法声明又要有实现。

评分

参与人数 1黑马币 +1 收起 理由
jing迪 + 1

查看全部评分

回复 使用道具 举报
分类可以对类进行补充添加新的方法而不用更改原来的类文件,协议:要想使用协议声明的方法必须要遵守协议,个人可理解可以认为有约束作用,比如你要用protocol里面的方法而这个方法是required的那么你必须对方法进行实现
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马