iOS严谨单例写法/可继承单例
单例模式在 iOS 开发中可能算是最常用的模式之一了,但是由于OC本身的语言特性,想要写一个正确的单例模式相对来说比较麻烦. 今天就来说一说, 单例创建的方式和严谨的单例写法及可继承单例编写. 基本单例的创建方式 方式一(普通创建方式) SingleHandle.h @interface SingleHandle : NSObject //单例创建方法一般以 share, stand, main 开头 + 当前类名 +(SingleHandle *)shareSingleHandle; @end SingleHandle.m @implementation SingleHandle //声明静态变量 static SingleHandle *singlehanle = nil; +(SingleHandle *)shareSingleHandle { //同步锁 //防止一种极限的可能,第一个对象正在创建的时候,第二个对象就开始创建了,造成两个对象 @synchronized(self){ if (singlehanle == nil) { singlehanle = [[SingleHandle alloc]init]; } return singlehanle; } } @end 方式二(GCD 方式) Singleton.h @interface Singleton :