黑马程序员_OC学习笔记之分类和类的本质

                                                          OC--分类和类的本质

1.分类的作用:在不改变原来类内容的基础上,可以为类增加一些方法

 

2.定义方式: @interface Person(lc) @end

 

2.分类只能增加方法,不能增加成员变量

 

3.分类方法实现中可以访问原来类中声明的成员变量

 

4.分类可以重新实现原来类中的方法,但是会覆盖掉原来的方法,会导致原来的方法没法再使用

 

5.方法调用的优先级:分类(最后参与编译的分类优先) --> 原来类  --> 父类

 

6.在很多的情况下,往往是给系统自带的类添加分类,如NSObject和NSString,因为有的时候,系统类可能并不能满足我们的要求。

 

7.在大规模的应用中,通常把相应的功能写成一个分类,可以有无限个分类,对原有类进行扩充,一般分模块写,一个模块一个分类。

 

 

                         OC类的本质

 

1.类的本质:类的本质其实也是对象,只不错是class类型的对象,也叫做类对象

 

1.当程序启动时,就会加载项目中所有的类和分类,而且加载后会调用每个类和分类的+load方法,只会调用一次;

 

2.当第一次使用某个类时,就会调用当前类的+initialize方法;

 

3.先加载父类,再加载子类(先调用父类的+load方法,再调用子类的+load方法,最后调用分类的+load方法),先初始化父类,再初始化子类(先调用父类的+initialize方法,再调用子类的+initialize方法)。

 

4.注意:在初始化的时候,如果在分类中重写了+initialize方法,则会覆盖掉父类的。

 

5.重写+initialize方法可以监听类的使用情况。

 

posted on 2014-06-25 01:35  chainLiu  阅读(534)  评论(0)    收藏  举报

导航