ios object-c 实现Singleton(单例)模式
2011-07-07 09:49
609 查看
Singleton模式经常来做应用程序级别的共享资源控制, 应该说这个模式的使用频率非常高, 现在来看看在Objective-C里面的实现方法.
要实现一个Singleton Class, 至少需要做以下四个步骤:
1. 为Singleton Object实现一个静态实例, 初始化, 然后设置成nil.
2. 实现一个实例构造方法(通常命名为 sharedInstance 或者 sharedManager)检查上面声名的静态实例是否为nil, 如果是则新建并返回一个本类实例.
3. 重写 allocWithZone: 方法来保证当其他人直接使用 alloc 和 init 试图获得一个新实例的时候不会产生一个新的实例.
4. 适当的实现 copyWithZone:, release, retain, retainCount 和 autorelease.
以下为事例:
static AdAppConnect *sharedInstance_ = nil;
+ (AdAppConnect*)sharedAdAppConnect
{
if(!sharedInstance_)
{
sharedInstance_ = [[super alloc] init];
}
return sharedInstance_;
}
- (void)dealloc
{
[sharedInstance_ release];
}
要实现一个Singleton Class, 至少需要做以下四个步骤:
1. 为Singleton Object实现一个静态实例, 初始化, 然后设置成nil.
2. 实现一个实例构造方法(通常命名为 sharedInstance 或者 sharedManager)检查上面声名的静态实例是否为nil, 如果是则新建并返回一个本类实例.
3. 重写 allocWithZone: 方法来保证当其他人直接使用 alloc 和 init 试图获得一个新实例的时候不会产生一个新的实例.
4. 适当的实现 copyWithZone:, release, retain, retainCount 和 autorelease.
以下为事例:
static AdAppConnect *sharedInstance_ = nil;
+ (AdAppConnect*)sharedAdAppConnect
{
if(!sharedInstance_)
{
sharedInstance_ = [[super alloc] init];
}
return sharedInstance_;
}
- (void)dealloc
{
[sharedInstance_ release];
}
相关文章推荐
- ios object-c 实现Singleton(单例)模式
- ios object-c 实现Singleton(单例)模式
- ios object-c 实现Singleton(单例)模式
- ios学习--iphone单例模式(singleton)的实现
- Object-C 中实现 Singleton (单例) 模式
- Object-C 中实现 Singleton (单例) 模式
- Object-C 中实现 Singleton (单例) 模式
- Object-C 中实现 Singleton (单例) 模式
- Object-C 中实现 Singleton (单例) 模式
- Object-C 中实现 Singleton (单例) 模式
- Object-C 中实现 Singleton (单例) 模式
- Object-C 中实现 Singleton (单例) 模式
- 设计模式之(Singleton)单例模式的几种实现
- iOS应用设计模式开发中职责链(责任链)模式的实现解析
- iOS KVO 观察者模式实现方式
- iOS单例模式的实现
- C#实现Singleton设计模式
- objective-c中的Singleton单例模式的完整实现示例
- iOS的单例模式(singleton)
- 使用Object-C实现23种设计模式之单例模式