Method、IMP、SEL、CLASS
2016-07-29 本文已影响40人
小谨哥哥
class :被定义为一个指向objc_class的结构体指针,这个结构体表示每一个类的结构体。
struct objc_class{
struct objc_class super_class; /*father class*/
const char *name;/*class name*/
long version;
long info;/*class information(类信息)*/
long instance_size; /*实例大小*/
struct objc_ivar_list *ivars;/*实例参数链表*/
struct objc_method_list **method;/*方法链表*/
struct objc_cache *cache; /*方法缓存*/
struct objc_protocol_list *protocols; /*协议链表*/
}
Mehod :方法链表里面方法就是method类型。其结构如下图。
SEL;就是method的方法名。IMP指向该方法的具体实现的具体函数指针。method_types:该方法的参数类型;