建立一個BNRitemStore類別的單一實例
+(BNRitemStore *)sharedStore{
static BNRitemStore *sharedStore = nil;
if(!sharedStore){
sharedStore = [[super allocWithZone:nil]init];
}
return sharedStore;
}
+(id)allocWithZone:(NSZone *)zone{
return [self sharedStore];
}
第一個方法中使用了allocWithZone方法,第二個方法中又使用了sharedStore方法,這二者不會造成循環嗎?該如何理解呢?
第一個方法呼叫的是父類別的allocWithZone