isa:isa指针
superclass:父类的类对象
cache:方法缓存列表(哈希表)
_buckets: 缓存方法的列表
bucket_t:缓存的方法
bits:具体类的信息,主要包含一个class_rw_t 数据列表
ro:类对象的一些只读信息
baseMethodList:类原有的方法列表
注:class_ro_t里面的baseMethodList、baseProtocols、ivars、baseProperties是一维数组,是只读的,包含了类的初始内容
methods:方法列表
注:class_rw_t里面的methods、properties、protocols结构是一样的,都是二维数组,是可读可写的,包含了类的初始内容、分类的内容
method_t :方法结构体
SEL:代表方法\函数名,一般叫做选择器,底层结构跟char *类似 可以通过@selector()和sel_registerName()获得,可以通过sel_getName()和NSStringFromSelector()转成字符串,不同类中相同名字的方法,所对应的方法选择器是相同的;
types:包含了函数返回值、参数编码的字符串,可以通过method_getTypeEncoding()获取;
返回值 | 参数1 | 参数2 | ...... | 参数n |
IMP:代表函数的具体实现,可以通过method_getImplementation()获取;