美文网首页
Class 窥探

Class 窥探

作者: 取个名字真困难 | 来源:发表于2018-11-08 19:55 被阅读0次

内部结构图

image

class_rw_t 里面的methods、properties、protocols是二维数组,是可读可写的,包含了类的初始内容、分类的内容

image

class_ro_t 里面的baseMethodList、baseProtocols、ivars、baseProperties是一维数组,是只读的,包含了类的初始内容

image

method_t是对方法/函数的封装

struct_method_t  {

    SEL name; //函数名字

   const char *types;//(返回值,参数类型)

   IMP imp;//函数入口地址

}

Class内部结构中有个方法缓存(cache_t),用散列表(哈希表)来缓存曾经调用过的方法,可以提高方法的查找速度

struct_cache_t  {

   struct bucket_t *_buckets; //哈希表

   mask_t _mask; 

   mast_t _occipied

}
struct bucket_t {

   cache_key_t  _key; //SEL

   IMP imp; //函数地址

  }

相关文章

  • Class 窥探

    内部结构图 class_rw_t 里面的methods、properties、protocols是二维数组,是可读...

  • iOS-Runtime2-Class的内部结构、method_t

    一. Class的内部结构 在isa指针和superclass指针+窥探Class中,我们初步窥探了Class的内...

  • iOS-面试题1-NSObject本质

    目录: NSObject本质 OC对象的分类 isa指针和superclass指针+窥探Class KVO和KVC...

  • iOS重学之class_rw_ext_t结构详解

    写在前面 在iOS重学之窥探Class的结构[https://codersunny.com/posts/b55a1...

  • iOS源码解析:runtime<二> objc_ms

    iOS源码解析:runtime<一> isa,class底层结构窥探iOS方法调用的过程我们都很清楚,比如下面这个...

  • 底层原理总结 — 窥探Class的结构

    在Xcode中,点击Class直接跳转 发现Class就是一个结构体objc_class类型的指针 看到class...

  • iOS重学之窥探Class的结构

    写在前面 本文主要探究Class的内部结构,博主这里使用的objc4的源码版本是objc4-838,建议大家在看的...

  • 重要的事情要说三遍 一定要看!!!

    不要去窥探别人的隐私, 真相往往伤害到窥探者本身。 不要去窥探别人的隐私, 真相往往伤害到窥探者本身。 不要去窥探...

  • 窥探

    唐青已经三天没有洗过头了,来大姨妈的女人好像对于洗头这件事情如临大敌,从初中开始就有一种执念就是月经期间的女...

  • 窥探

    我是一名胖胖的男孩,刚读一年级。 最近我很烦恼,一年级和幼儿园一点都不一样,规矩老多了,上课必须坐端正,不能在教室...

网友评论

      本文标题:Class 窥探

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