单例模式
2017-09-10 本文已影响0人
小小志伟
单例模式是什么
就是不论在哪里需要用到这个类的实例变量,都可以通过单例方法来取得,而且一旦你创建了一个单例类,不论你在多少个界面中初始化调用了这个单例方法取得对象,它们所有的对象都是指向的同一块内存存储空间(即单例类保证了该类的实力对象是唯一存在的一个).
单例类保证了应用程序的生命周期中有且仅有一个该类的实例对象,而且易于外界访问。
iOS系统的单例类
UIApplication类有一个方法叫sharedApplication,从任何地方调用这个方法,都将返回与当前正在运行的应用程序相关联的UIApplication实例。除了这个,NSNotificationCenter(消息中心) 、NSFileManager(文件管理) 、 NSUserDefaults(持久化存储数据) 、NSURLCache(请求缓存)、NSHTTPCookieStorage(应用程序cookies池)、UIScreen都是系统单例;
单例模式怎么写
(2).通过GCD实现单例方法:
+(DBManager *)sharedManager; (.h文件中)
.m文件中的实现:
+(DBManager *)sharedManager{
Static DBManager *manager = nil;
static dispatch_once_t token;
dispatch_once(&token,^{
if(manager == nil){
manager = [[DBManager alloc]init];
}
} );
return manager;
}
http://www.cnblogs.com/MasterPeng/p/5000516.html