objc在向一个对象发送消息时,runtime库会根据对象的isa指针找到该对象实际所属的类,然后在该类中的方法列表以及其父类方法列表中寻找方法运行,如果,在最顶层的父类中依然找不到相应的方法时,会进入消息转发阶段,如果消息三次转发流程仍未实现,则程序在运行时会挂掉并抛出异常unrecognized selector sent to XXX 。
说一下对 isa 指针的理解, 对象的isa 指针指向哪里?isa 指针有哪两种类型? isa 等价于 is kind of 实例对象 isa 指向类对象 类对象指 isa 向元类对象 元类对象的 isa 指向元类的基类 isa 有两种类型 纯指针,指向内存地址 NON_POINTER_ISA,除了内存地址,还存有一些其他信息 isa源码分析 在Runtime源码查看isa_t是共...