1 oc对象、类的本质是什么,OC对象的内存布局是什么样子的,一个NSObject对象占用多少内存,一个自定义类的对象的本质及占用多少内存?
oc中首先要知道在64位环境下一个int 占用 4字节 一个double 占用8字节 指针占用8字节
我们可以将Objective-C代码转换为C\C++代码
xcrun -sdk iphoneos clang -arch arm64 -rewrite-objc OC源文件 -o 输出的CPP文件
下面是转化结果 由此可以看出一个NSObject对象里面只有一个指针 所以实际占用的内存为8个字节(在iOS中要遵循oc 的内存对其原则实际分配内存为16 的倍数 所以是16字节)

2 oc中对象的种类以及各种对象之间的分工问题以及联系
首先oc 中对象有三类 实例对象(instance),类对象(class)以及元类对象(meta-class)

3 isa superclass总结


网友评论