#import <Foundation/Foundation.h>
#import "Person.h"
#import "Car.h"
void demo(Class c);
int main(int argc, const char * argv[]) {
// 1.如何获取类对象
// [实例对象 class]; [类名 class];
Person *p1 = [[Person alloc] init];
Person *p2 = [[Person alloc] init];
// 一个类再内存中只有一份类对象
Class c1 = [p1 class];
Class c2 = [p2 class];
Class c3 = [Person class];
NSLog(@"c1 = %p, c2 = %p, c3 = %p", c1, c2, c3);
// 2.类对象的应用场景
// 2.1用于创建实例对象
Person *p3 = [[c1 alloc] init];
p3.age = 30;
NSLog(@"%i", p3.age);
// 2.2用于调用类方法
// [Person test];
[c1 test];
demo(c1);
demo([Car class]);
return 0;
}
void demo(Class c)
{
id obj = [[c alloc] init];
NSLog(@"%@", obj);
}
07-13、如何获取类对象以及类对象的应用场景:Class
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- pragma mark 获取类对象以及类对象应用的场景 pragma mark 概念 pragma mark 代码...