OC中的反射机制

简单聊一下概念和使用

1). class反射

通过类名的字符串形式实例化对象。

Class class = NSClassFromString(@"student");
Student *stu = [[class alloc] init];

将类名变为字符串。

Class class =[Student class];
NSString *className = NSStringFromClass(class);

2). SEL的反射

通过方法的字符串形式实例化方法。

SEL selector = NSSelectorFromString(@"setName");
[stu performSelector:selector withObject:@"Mike"];

将方法变成字符串。

NSStringFromSelector(@selector*(setName:));

调用方法有两种方式:

1). 直接通过方法名来调用。[person show];

2). 间接的通过SEL数据来调用 SEL aaa = @selector(show); [person performSelector:aaa];

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • class反射 通过类名的字符串形式实例化对象 Class class NSClassFromString@(@"...
    R丶Madrid阅读 349评论 0 0
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 2,174评论 0 9
  • 面试笔试都是必考语法知识的。请认真复习和深入研究OC。 Objective-C 方法和选择器有何不同?(Diffe...
    b485c88ab697阅读 5,916评论 0 35
  • 1.设计模式是什么? 你知道哪些设计模式,并简要叙述? 设计模式是一种编码经验,就是用比较成熟的逻辑去处理某一种类...
    司马DE晴空阅读 1,520评论 0 7
  • 这段时间,自己有焦虑有失措,有收获有开心。这段时间交了一个新朋友――吴郎(公众号值得关注),写了篇蟹甲归田,不是卸...
    海边学游泳的鱼阅读 596评论 0 1

友情链接更多精彩内容