好久没有总结过了,一直在赶项目。。。
今天来总结一下OC中的反射机制,有什么不对的地方,还请多多海涵。
反射机制,简单的说就是在程序运行期间通过类的名字来动态的获取类的信息,从而实现动态的创建类,以及动态的调用类的方法等。
当我们在编码的时候不知道要创建哪个类的对象,需要在运行期间根据配置文件来获取我们要创建的对象的类的名字。这时候我们就可以通过反射机制,在程序运行期间通过类的名字获取类的信息。
OC中常用的反射机制的几种方法,基本上都在Founditon框架和NSObjct类的方法列表里面。
1.NSObjct类中的方法
1. isKindOfClass
该方法用于判断一个对象是不是一个类或者这个类的字类的实例对象。
2. isMemberOfClass
该方法用于判断一个对象是不是一个类的实例对象
3.conformsToProtocol
该方法用于判读一个对象是否遵循了一个协议
4.respondsToSelector
该方法用于判断一个对象是否实现了这个方法
2.Foundation (NSObjCRuntime.h)
1. NSStringFromSelector