Тип класса Цель C
В NSObject
Протокол, он определяет метод, который похож на это:
-(Class) class
Какой тип объекта является объектом класса? Или это даже объект? Что я могу сделать с объектом? Могу ли я получить базовый класс или принятые протоколы?
2 ответа
Решение
Class
сам по себе класс, определенный средой выполнения Objective C, сродни Class
класс на Java. Например, вы можете использовать функцию class_getClassName()
чтобы получить название класса:
NSObject *o = [[[NSObject alloc] init] autorelease];
NSLog(@"%s\n", class_getClassName([o class])); // prints "NSObject"
Вы можете сделать все виды самоанализа / отражения с Class
объекты; см. ссылку на среду выполнения Objective C для деталей.
Сейчас
NSObject *o = [[NSObject alloc]init];
NSLog(@"%s\n", object_getClassName([o class]));
object_getClassName
вместо class_getClassName