iOS Category 和 Extension的区别

Category 也叫 分类/类别/类目

  作用: 

   1   不改变原有源码的情况下对类功能进行扩展

   2   对于一些大类,进行功能划分, 有利于模块化编程

  使用格式:

 1 声明: @ interface 类 (分类)

             @end

 2  实现: @implementation 类(分类)

             @end

  注意:

1 分类仅仅是对类功能进行扩展,只能定义实现方法, 不能添加实例变量(因为实例变量所在的内存区域已初始化为不可更改,无法在动态运行时修改之,可以用动态运行添加动态变量),但是可以调用 类实例变量和类方法
2 分类中方方法可以选择实现,实现后,如果有和类同名方法, 分类方法优先级更高
3 分类中方法可以被继承


Extension 就是扩展也叫匿分类

   相比分类  扩展主要用于 类实现之前,  对类添加私有实例变量和私有方法

                

   格式

  @interface 类 ()
   
  @end

           

                 @implementation 类

                 @end



        

你可能感兴趣的:(iOS,网络多线程)