self与super

self为实例对象:[self class]\object_getClass(self), 返回都是本类的类对象;object_getClass([self class])返回都是本类的元类。

self为类对象:[self class]返回都是自身self,即为本类的类对象;object_getClass(self) 等于 object_getClass([self class])

//NSObject类实现
+ (Class)class {
    return self;
}

- (Class)class {
    return object_getClass(self);
}

元类、类,都是对象,但是仅且只有一个,因为具有isa指针,isa指针是指向类(is a class instance)

元类、类、实例

运行时创建类/方法/变量:
https://blog.csdn.net/chenxi506343891/article/details/73496609

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容