我有一个对象的标题,其中新标记为不可用且正确(因为它应该是单例)
@interface Manager : NSObject <NSCopying>
+ (instancetype)new NS_UNAVAILABLE;
- (instancetype)init NS_UNAVAILABLE;
+ (instancetype)sharedInstance;
@end
.......现在这对外界来说是正确的,但经理本身的@implementation应该免于此....我希望它能够调用[self new]
e.g。我想要
@implementation Manager
+ (instancetype)shared {
static id shared = nil;
if(!shared) {
shared = [self new];
}
return shared;
}
@end
请注意这是一个例子,这不是关于单身人士的。我想打电话给新人,即使它是被禁止的,上面是一个例子
[super new]
答案 0 :(得分:1)
您可以转换为new
,然后您可以毫无问题地发送消息shared = [(id)self new];
:
[super new]
如果您的课程没有new
的实施,您也可以使用task del 1,2,3
。