美文网首页iOS开发者日记
类别、分类、继承

类别、分类、继承

作者: DeadRabbit | 来源:发表于2016-11-22 17:42 被阅读3次

定义


  1. 类别(category)应用非常常见,特别是在为系统类进行扩展的时候,我们可以不用继承系统类,直接给系统类添加方法。最大程度上体现了OC语言的动态性。但是类别只能添加方法不能添加属性。

  2. 继承(inherit),一个类(子类)继承于另一个类(父类),那么子类不仅拥有父类所有的属性和方法,而且可以创建属于自己的属性和方法。

类别和继承的使用


只能使用继承,类别无法实现。

  • 新扩展的方法与原方法同名,但是还需要使用父类的实现。因为类别会覆盖原类的实现,无法访问到原来的方法。
  • 扩展类的属性,这个类别无法做到。

最好使用类别情况

  • 针对系统提供的一些类,例如:NSString,NSArray,NSNumber等类,系统本身不提倡使用继承去扩展方法,因为这些类内部实现对继承有所限制,所以最后使用类别来进行方法扩展。
  • 类别支持开发人员针对自己构建的类,把相关的方法分组到多个单独的文件中,对于大型而复杂的类,这有助于提高可维护性,并简化单个源文件的管理。

相关文章

  • 类别、分类、继承

    定义 类别(category)应用非常常见,特别是在为系统类进行扩展的时候,我们可以不用继承系统类,直接给系统类添...

  • 继承、分类(类别)和扩展

    继承 继承就是子类可以继承父类的属性与方法,使用继承可以实现代码的复用,减少代码冗余,子类可以直接拥有父类...

  • Django笔记11-分类页面与模板继承

    分类页面与模板继承 显示单一类别的文章列表 分类页面  分类页面与首页基本相同,但是显示的是指定类别的文章 模板 ...

  • 类别 & 继承

    类别类别可以在不获悉,不改变原来代码的情况下往里面添加新的方法,只能添加,不能删除修改。并且如果类别和原来类中的方...

  • iOS类目与继承的区别

    类目:也称类别,分类。类别文件的命名:原类的名称 + 扩展标识名继承:多个类具有相同的实例变量和方法时,考虑使用继...

  • 自定义view学习日记(一)

    自定义View分类 PS :实际上ViewGroup是View的一个子类。 类别 继承自 ...

  • 分类、类别

    分类(Category)是OC中的特有语法,它是表示一个指向分类的结构体的指针。原则上它只能增加方法,不能增加成员...

  • iOS 分类(Category)知识点总结

    1.Category是什么?重写一个类的方法用继承好还是分类好? Category是类别;一般情况用分类好,用C...

  • 逻辑回归(三)

    多类别分类(Multiclass Classification) 在多类别分类问题中,我们的训练集中有个多个类别,...

  • UI基础知识

    分类(类别/Category)与类扩展(Extension) 一、分类(类别/Category) 1. 适用范围 ...

网友评论

    本文标题:类别、分类、继承

    本文链接:https://www.haomeiwen.com/subject/odfmpttx.html