前言
在Objective-C语言中,类的本质是什么?
一、内存的五大区域是什么?
1.栈——存储局部变量
2.堆——存储程序员用malloc,realloc,calloc自己申请的空间,以及类的对象。
3.BSS段——存储未初始化的全局变量,静态变量
4.数据段(常量区)——存储已经初始化的全局变量,静态变量。
5.代码段——存储类的二进制代码,方法的二进制代码
二、类的本质
1.类什么时候被加载到代码段?
类第一次被访问的时候,被加载到代码段,称为“类加载”。
2.类一旦被加载到代码段以后,什么时候回收?
程序结束时回收。
3.类以什么样的形式存储在代码段?
1)前言:任何存储在内存当中的数据,都有一个数据类型。
2)前言:任何在内存中申请的空间,也有自己的类型。
3)在代码段中存储类的空间是什么类型的:Class类型的
4)在代码段中存储类的步骤:
a. 现在代码段中创建一个Class对象。
b. Class是Foundation框架中的一个类,那Class对象是干嘛的呢,是用来存储类的。
c. 将类的信息存储在这个Class对象之中
d. 这个Class对象至少应该有三个属性:
- ClassName 存储类名
