单例的介绍
单例模式是在iOS开发中最常用的一种设计模式,单例模式可以让程序的各个模块共享数据,而不用去手动的去传递。所以单例类是一个我们要去理解的非常重要的模式,这种模式贯穿于iPhoneSDK中,例如UIApplication有一个方法叫做shareApplication用来共享当前程序的UIApplication实例。
单例的实现
添加一个ShareData类,在ShareData.h中声明如下:
#import <foundation/Foundation.h>
@interface ShareData : NSObject
{
NSString *string;
}
@property (nonatomic, retain) NSString *string;
+ (id)sharedData;
@end
在ShareData.m中实现该类:
#import "ShareData.h"
@implementation ShareData
@synthesize someProperty;
#pragma mark Singleton Methods
+ (id)sharedData
{
static ShareData *sharedData = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sharedData = [[self alloc] init];
});
return sharedData;
}
- (id)init
{
if (self = [super init])
{