OC中的单例模式
1 @implementation Singleton 2 static Singleton *st; 3 +(Singleton*) instance{//可用id代替返回可用的指针对象 instance是方法名 4 //静态变量,生命周期是整个程序,在下一次该函数调用时仍可使用 。 if(st==nil ) {//指针为空就创建 st = [[Singleton alloc] init]; 5 //指针st指向单例模式 Singleton 6 } 7 return st;//不是空就继续使用 8 } 9 @end
单例模式 Singleton模式,即单例模式。顾名思义,主要用于做应用程序的资源共享控制。实质为,单例是在程序声明周期里有且仅有被实例化过一次的类。为确保实例化的唯一,利用类的类(static)方法来生成和访问对象。至此,我们可以在程序中任何地方访问类的单例对象,因为只实例化唯一的一次,所以,并不用 alloc、init、autorelease初始化方法。 单例设计模式的要点: (1) 某个类只能有一个实例。 (2)他必须自行创建这个对象 (3)必须自行向整个系统提供这个实例; (4)这个方法必须是一个静态类; .m文件代码(记住) |