美文网首页
iOS开发中category优点和缺点,作用

iOS开发中category优点和缺点,作用

作者: 巴糖 | 来源:发表于2016-04-06 22:15 被阅读1500次

    优点:

    不需要通过增加子类而增加现有类的行为(方法),且类目中的方法与原始类方法基本没有区别;

    通过类目可以将庞大一个类的方法进行划分,从而便于代码的日后的维护、更新以及提高代码的阅读性;

    缺点:

    无法向类目添加实例变量,如果需要添加实例变量,只能通过定义子类的方式;

    类目中的方法与原始类以及父类方法相比具有更高优先级,如果覆盖父类的方法,可能导致super消息的断裂。因此,最好不要覆盖原始类中的方法。

    类别的作用

    给系统原有类添加方法,不能扩展属性。

    如果类别中方法的名字跟系统的方法名一样,在调用的时候类别中的方法优先级更高;

    分散类的实现:如:

    + (NSIndexPath *)indexPathForRow:(NSInteger)row inSection:(NSInteger)section

    原本属于NSIndexPath的方法,

    但因为这个方法经常使用的表的时候调用、跟表的关系特别密切,因此把这个方法一类别的形式、声明在UITableView.h中。

    声明私有方法,某一个方法只实现,不声明,相当于私有方法。

    类别不能声明变量,类别不可以直接添加属性。

    property描述setter方法,就不会报错。

    相关文章

      网友评论

          本文标题:iOS开发中category优点和缺点,作用

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