What should be done with inherited factory methods?
问题 Suppose I have a class BasicDate , and a subclass of BasicDate called EuroDate . The difference between the classes is month-day-year versus day-month-year. I know it'd probably be better to just have methods on the same class to output them differently... but that's not the point of this question. BasicDate has the following init method : -(id)initWithMonth:(int)m andDay:(int)d andYear:(int)y { if(self = [super init]) { /*initialize*/ } return self; } And the matching factory method then