美文网首页
OC的反射机制

OC的反射机制

作者: 雪之不尽 | 来源:发表于2018-05-09 23:19 被阅读0次

Class反射

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

Class class = NSSClassFromString(@“Person”);

Person *per = [[Person alloc]init];

// 将类名变为字符串

Class class1 = [Person class];

NSString *className = NSStringFromClass(class1);

// SEL的反射

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

SEL selector = NSSelectorFromString(@“setName”);

[per perfromSelector:selector withObject:@"Mike" afterDelay:1];

// 将方法变成字符串

NSString *str = NSStringFromSelector(@selector(setName:));

SEL:对方法的一种包装。包装的SEL类型数据它对应相应的方法地址,找到方法地址就可以调用方法。在内存中每个类的方法都存储在类对象中,每个方法都有个与之相对应的SEL数据类型,根据一个SEL数据就可以找到对应的方法地址,进而调用方法。

SEL sl = @selector(test);  //将test方法包装成SEL对象。

SEL s2 = NSSelectorFromString(@"test"); // 将一个字符串方法转换成SEL对象

调用方法有两种

1.直接通过方法名来调用

 [per test];

2.间接的通过SEL数据来调用

 SEL a = @selector(test);

[per preformSelector:a];

相关文章

  • Effective-OC读书笔记(1)

    针对于这几天在读effective-oc相关书籍,笔者基于OC基础做一些总结 1、反射机制 OC中的反射机制 体现...

  • iOS面试题

    1、说一下OC的反射机制; OC 的反射机制以及使用场景 2、block的实质是什么?有几种block?分别是怎样...

  • 问题大全

    1.说一下OC的反射机制 所有的oc 对象都是继承于nsobject nsobject 提供了如下反射方法反射方...

  • 【转载】objc反射机制

    反射机制的基本概念: 找了好久oc的反射机制,只能朦胧的得到一句:跟java的反射机制相似 那么笔者就先贴上jav...

  • OC反射机制

    概述 在计算机科学中,反射是指计算机程序在运行时(Run time)可以访问、检测和修改它本身状态或行为的一种能力...

  • OC反射机制

    系统Foundation框架为我们提供了一些方法反射的API,我们可以通过这些API执行将字符串转为SEL等操作。...

  • OC反射机制

    反射机制定义: 运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意...

  • OC的反射机制

    概念 反射机制是指程序可以访问、检测和修改它本身状态或行为的一种能力。在OC中是可以去动态访问,检查,修改的方法就...

  • OC的反射机制

    Class反射 // 通过类名的字符串形式实例化对象 Class class = NSSClassFromStri...

  • OC的反射机制

    目录 1 反射机制的概念 2 反射机制原理 首先还是按照惯例和大家解释下什么反射机制? 反射的概念是由Smith在...

网友评论

      本文标题:OC的反射机制

      本文链接:https://www.haomeiwen.com/subject/cqjarftx.html