• 类别的三个作用


    1.将类的实现分散到多个不同文件或不同框架中。

    2.创建对私有方法的前向引用

      关于前向引用:如果其他类中的方法未实现,在你访问其他类的私有方法时,编译器会报错,这时使用类别,在类中声明这些方法(不必实现)就不会再产生警告,来我们是访问不了其他类的私有方法的,但是帮那个类的私有方法声明在这个类的类别中,就可以访问了,而且不需要在类别中实现,因为那个类里已有实现。

    3.向对象添加非正式协议。

      创建一个NSObject的类别并添加新方法,因为NSObject是顶级父类,在NSObject中添加了该方法,也就是说通过继承关系,所有的类中都有该方法。

      正式协议是通过protocol指定的一些列方法的声明,然后由实现该协议的类自己去实现这些方法。而非正式协议是通过向NSObject中添加一个类别来实现,然后子类去继承NSObject。其实都差不多。

      不过,非正式协议已经渐渐被正式协议取代,正式协议最大的优点就是可以使用泛型约束,而非正式协议则不可以。

  • 相关阅读:
    随时积累随手记(持续更新...)
    Zookeeper集群搭建
    Dubbo——基于Zookeeper服务框架搭建及案例演示
    nginx配置浅析
    阿里面试回来,想和Java程序员谈一谈
    博客收藏列表
    启示录:打造用户喜爱的产品
    js深拷贝和浅拷贝
    MyBatis 总结记录
    ActiveMQ初体验
  • 原文地址:https://www.cnblogs.com/J-yq/p/5211328.html
Copyright © 2020-2023  润新知