0
我有一个模型,例如产品。产品需要属性ID。 所以我认为模型不能没有财产。 我的Product类的init方法的实现。Objective-C返回无内部初始化
- (instancetype)initWithProductId:(NSNumber *)productId {
if ([productId integerValue] <= 0) {
return nil;
}
self = [super init];
if (self) {
_productId = productId;
}
return self;
}
在initilization方法中返回nil是否合法?我会得到内存管理问题吗? 有人可以解释为什么它是合法的,什么时候应该使用它。
我测试这种情况。我发现''dealloc'方法在'[super init]'之前返回nil时执行。但是我也问过,如果对象在没有'productId'的情况下不能有任何东西,就返回'init'方法中的nil是正确的方法(例如) – rowwingman