@interface Vehicle : NSObject
-(void) test;
@end
@interface Car : Vehicle
@end
@interface Truck : Vehicle
@end
@implementation Vehicle : NSObject
-(void) test {
//Implementation
}
@end
@implementation Car : Vehicle
@end
@implementation Truck : Vehicle
@end
NSMutableArray<Vehicle *> *list = [NSMutableArray new];
Vehicle *vehicle = [Vehicle new];
Car *car = [Car new];
Truck *truck = [Truck new];
[list addObject: vehicle];
[list addObject: car];
[list addObject: truck];
for (Vehicle *vehicle in list) {
[vehicle test];
}