iOS 单例模式

单例模式(singleton),顾名思义,单个实例。也就是说,整个App lifetime期间,该类只能有一个实例对象。

iOS中实现单例模式通常使用下面两种方法:

请容许我模仿系统UIApplication的实现来进行编码,我们假设可以这么做:)。

<pre>第一种:
+ (UIApplication)sharedApplication{
static UIApplication
application = nil;
@synchronized(self){
if(application == nil){
application = [[UIApplication alloc]init];
}
}
return application;
}
</pre>

<pre>第二种:
+(UIApplication)sharedApplication{
static UIApplication
application = nil;
static dispatch_once_t predicate;
//简单说一下下面这个函数,其功能是保证在app生命周期中,只执行一次参数中的block
dispatch_once(&predicate, ^{
application = [[UIApplication alloc]init];
});
return application;
}

</pre>

单例模式的应用场景:
通常用于资源管理类,比如网络请求,文件管理等等。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 简介: 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统...
    RunnerFL阅读 3,833评论 0 0
  • iOS设计模式——单例模式http://blog.csdn.net/lovefqing/article/detai...
    LV大树阅读 4,023评论 0 1
  • 什么是单例模式: 单例模式是一个类在程序中只有一个实例对象。我们可以从全局的一个入口点对这个实例对象进行访问,通常...
    sakuragi阅读 4,003评论 0 0
  • IOS单例模式(Singleton)单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例...
    Living_元宝儿阅读 5,086评论 1 6
  • 晚上和好友聊天,她为亲人被病痛的折磨而伤心难过;看到躺在病床上瘦弱的亲人而百感交集,心里不是滋味。我能够感受到她的...
    朴不二阅读 1,508评论 0 0

友情链接更多精彩内容