I\'m used that in Objective-C I\'ve got this construct:
- (void)init {
if (self = [super init]) {
// init class
}
return self;
}
<
IMO, you should call it. If your superclass is object, you should not, but in other cases I think it is exceptional not to call it. As already answered by others, it is very convenient if your class doesn't even have to override __init__ itself, for example when it has no (additional) internal state to initialize.