单例模式
2016-09-27 本文已影响0人
LY2528
1 基本概念 :在程序运行过程中,一个类只有一个实例。
2 使用场合 :在整个应用程序中,共享一份资源(这份资源只需要创建初始化一次)。
3 实现步骤
1)在类的内部提供一个static修饰的全局变量。
2)提供一个类方法方便外界访问。(类方法的命名:share + 类名 | default + 类名)
3)重写+allocWithZone方法。(在这里保证为对象,只分配一次内存空间,使用一次性执行代码)
4)重写-copyWithZone 和 -mutableCopyWithZone (在这两个方法中,直接返回实例对象,因为,这两个方法是对象方法,被调用,说明,对象已经被创建了,所以直接返回实例对象就可以了)。
上面的四步,是在ARC下创建一个单例对象,如果是在MRC下,还要补充几个方法的实现。
5)重写 -release方法(在这个方法中,什么也不做)。
6)重写 -retain方法(在这个方法中直接返回实例对象)
7)重写 -retainCount方法(在这个方法中,返回一个最大值)
相关代码如下: