Objective —C 的单例模式 Singleton实现

分享两段Objective - C实现单例模式的code

 

貌似在MAC开发里面很少有人提及设计模式。。。至少还没有看到用Objective —C实现什么设计模式的。。。

 

代码



static DataManager *sharedDataManager = nil;

+ (DataManager *) sharedManager
{
    @synchronized(self)
 {
        
if (sharedDataManager == nil)
  {
            [[self alloc] init];
        }
    }
 
    
return sharedDataManager;
}

+ (id)allocWithZone:(NSZone *)zone
{
    @synchronized(self)
 {
        
if(sharedDataManager == nil)
  {
            sharedDataManager 
= [super allocWithZone:zone];
            
return sharedDataManager;
        }
    }
 
    
return nil;
}

 

防盗加个链接:

   作者:Alexliu(alex dotNet Learning)
   出处:http://alexliu.cnblogs.com/

 

 

posted @ 2010-02-21 16:14  AlexLiu  阅读(3258)  评论(2编辑  收藏  举报