类别的作用?


类别主要有3个作用:

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

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


  • 分类 可以在不获悉,不改变原来代码的情况下往里面添加新的方法,只能添加,不能删除修改。 并且如果类别和原来类中的方法产生名称冲突,则类别将覆盖原来的方法,因为类别具有更高的优先级。
  • 继承 可以增加,修改或者删除方法,并且可以增加属性。

类别和类扩展的区别?


category和extensions的不同在于 后者可以添加属性。另外后者添加的方法是必须要实现的。 extensions可以认为是一个私有的Category。