iOS 模仿苹果编写单例
Posted 1018475062
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 模仿苹果编写单例相关的知识,希望对你有一定的参考价值。
#import <Foundation/Foundation.h>
@interface Person : NSObject
+(instancetype)sharePerson;
@end
#import "Person.h"
@implementation Person
static Person *_instance = nil;
+(void)load{
_instance = [[self alloc] init];// 已进入就调用
}
+(instancetype)sharePerson{
return _instance;
}
+(instancetype)alloc{
if (_instance) { // 禁止调用alloc
NSException *exception = [NSException exceptionWithName:NSInternalInconsistencyException reason:@"There can only be on Person instance" userInfo:@{}];
[exception raise];// 抛出异常
}
return [super alloc];
}
@end
以上是关于iOS 模仿苹果编写单例的主要内容,如果未能解决你的问题,请参考以下文章