由類生成對象。對象的結(jié)構(gòu)體實例通過isa這個成員變量來保持類的結(jié)構(gòu)體實例指針,建立類與對象間的關(guān)系。oc運行時為每個類的結(jié)構(gòu)體實例分配空間,該結(jié)構(gòu)體實例有成員變量、方法名稱、函數(shù)指針、屬性。
類的結(jié)構(gòu)體就是class_t結(jié)構(gòu)體,這個結(jié)構(gòu)體基于objc_class結(jié)構(gòu)體
struct objc_class{
? ? objc_class *isa;
}
struct class_t{
? ? struct class_t *isa;
? ? struct class_t *superclass;
? ? Cache cache;
? ? IMP *vtable;
? ? uintptr_t data_NEVER_USE;
}