所谓单例就是只有一个实例,所以单例的实现就是这个思路。就是提供一个方法(一般为类方法,一般以share或者default开头)供外部调用,调用之后可以获得类的实例,而且每次调用都是同一个实例,这就需要你用一个static变量来保存这个实例,如果这个实例为空,就alloc + init创建一个,如果不为空就直接返回给这个实例变量。这只是简单的实现,等学到多线程的时候就会有一个线程安全的函数来实现单例,如果要完全实现单例还需要重写allocWithZone,MRC模式下还要处理好多内存管理的细节。具体的你还可以和我讨论一下。 |
|