NSClassFromString()与NSStringFromClass()的用法及应用场景

来源:互联网 发布:淘宝网注册账号手机 编辑:程序博客网 时间:2024/05/21 14:59

    NSClassFromString()用于利用一个字符串来创建一个类,例如:

 NSString *responseClass =@“MyModel”;MyModel *model=[[NSClassFromString(responseClass) alloc] init];

NSStringFromClass()是获取与类型名称同名字的字符串,例如:

MyModel *model=[MyModel  alloc] init]; NSString *responseClass =NSStringFromClass([model class]);

这里一定要注意NSStringFromClass()中要传的参数为Class类型,不要直接把model传进去。

这两个函数一般用在什么地方呢?

1.用下一些用到反射设计模式的框架上,动态创建类的对象

2.用于一些逻辑的判断。

对于第一种应用,熟悉框架的开发者应该都用过,简单说下第二种

比如我判断返回的model类型是不是NSDictionary类型

Bool bb=[[model class] isKindOfClass:[NSDictionary class]] ;或者Bool cc=([model class]==[NSDictionary class]]);或者Bool dd=NSStringFromClass([[model class]isEqualToString:@“ NSDictionary”]



0 0
原创粉丝点击