黑马程序员技术交流社区
标题:
OC 实现单例模式
[打印本页]
作者:
卧龙小
时间:
2014-9-23 02:00
标题:
OC 实现单例模式
本帖最后由 卧龙小 于 2014-9-23 02:01 编辑
今天有同学讨论设计模式,写了个单例模式发出来,让大家喷喷,单利模式是让程序只有一个对象实例,在JAVA通常用于DAO中,构造单例一般将类的构造方法声明为private类型,通过静态方法对外提供实例对象
@implementation Book
static Book *instance= nil;
+(Book *) getInstance //不需要实例化对象,即可调用的方法
{
if(!instance)
{
instance = [[self alloc] init];
}
return instance;
}
@end
+(id)allocWithZone:(NSZone *) zone //覆盖allocWithZone,防止任何类创建第二个实例,并采用锁机制进行保护
{
@synchronized(self)
{
if(instance == nil)
{
instance = [super allocWithZone:zone];
return instance;
}
}
return instance;
}
复制代码
作者:
liwei92244256
时间:
2014-9-23 06:51
抱着学习的态度过来看下!
作者:
zrtalent
时间:
2014-9-23 09:13
学习中。。。路过,学习了。
作者:
萧雨流风
时间:
2014-9-24 08:36
入学考试好像就有这么一道题
作者:
wanyiyuan
时间:
2014-9-24 21:03
哥们 你这代码怎么贴上来的? 我不会贴啊,求指导
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2