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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 行路难 中级黑马   /  2016-7-19 14:01  /  1174 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.What is advantage of categories? What is difference between implementing a category and inheritance?

类别的作用?继承和类别在实现中有何区别?

答案:category 可以在不获悉,不改变原来代码的情况下往里面添加新的方法,只能添加,不能删除修改。

并且如果类别和原来类中的方法产生名称冲突,则类别将覆盖原来的方法,因为类别具有更高的优先级。

类别主要有3个作用:
(1)将类的实现分散到多个不同文件或多个不同框架中。
(2)创建对私有方法的前向引用。
(3)向对象添加非正式协议。

继承可以增加,修改或者删除方法,并且可以增加属性。

2.Difference between categories and extensions?

类别和类扩展的区别。

答案:category和extensions的不同在于 后者可以添加属性。另外后者添加的方法是必须要实现的。

extensions可以认为是一个私有的Category。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马