Я могу знать, как динамично инстанцировать класса в Objective C?
MyClass *myClass = [[MyClass alloc] init];
OtherClass *otherClass = [[OtherClass alloc] init];
] На iPhone, если вы хотите создать экземпляр класса по имени класса, вы можете использовать функцию времени выполнения objc_lookUpClass.
Например, если у меня есть базовый класс BaseHandler и я хочу создать экземпляр объекта правильного подкласса во время выполнения (жестко закодированный как MyHandler в этом примере):
#import <objc/objc.h>
[...]
NSString *handlerClassName = @"MyHandler"
id handlerClass = objc_lookUpClass([handlerClassName
cStringUsingEncoding:[NSString defaultCStringEncoding]]);
BaseHandler *handler = (BaseHandler *) [[handlerClass alloc] init];