00:00
那随着呢,我们对这个类的主动使用和被动使用讲解完以后啊,那我们这个类的一个初始化阶段,咱们就算是告一段落,那这一告一段落呢,我们就可以,呃走到下一个环节,叫做类的使用环节,那前面这几个环节呢,是因为我们说呢,这个意义非常重大,就跟咱们说这个做菜一样,前面呢,你是不是说买菜,洗菜,炒菜,终于这个菜是不是做完了,是饭在桌上啊,我在哪哪哪是吧,哎,这个菜已经做好了,这个你就可以吃了,那吃的过程实际上呢,是咱们说的下一个环节。那吃暖的谁不会呀,对吧,关键呢,就是上面这三个环节是我们说最重要的啊,这个也是难度最大的。那在面试当中呢,其实问的主要的环节呢,都是在这三个环节当中,那从我们讲解的篇幅上来看,大家也发现呢,关于这个初始化这块呢,是我们讲的比较重的这块,对吧?那前面呢,关于链接阶段呢,验证、准备、解析,大家你得知道每一个具体的细节啊,环节它都主要干什么事儿,你这个得知道啊,相关的关于这个字节码的一个验证啊,关于我们这个格式的验证啊,对吧?准备呢,就是涉及到这个默认赋值的问题,解析呢,涉及到符号引用转化为这个呃,直接引用的一个过程,那验证呢,一般跟这个加载阶段呢,我们说是基本上就同时进行了,而这个解析阶段呢,通常是在我们这个初始化阶段之后呢,再去实现的,对吧?那相应的这个机构呢,你得能跟人家说清楚啊。
01:23
能给人家说清楚,下边呢,我们看一下这个菜已经做好了,该吃了啊,下边呢就是一个食用啊,这个内容啊,非常简单,这呢也是咱们一开始讲这一章的时候强调过的,对于Java开发成员来讲,我们做的最多的事就是集中在类的使用这块,那前面这三个环节,Java虚拟机帮我们噔噔噔噔都执行完了啊,你需要做的事就是啊,一回家就可以吃饭了。哎,所以这块呢,咱们讲的就比较薄了,就没有必要在这儿呢给大家去啰嗦了。啊,没有必要去啰嗦了啊,下边呢,你看一旦呢,我们把前边的这三个环节执行完以后啊,叫万事俱备,只欠东风,是饭已做好啊,就欠吃了。
02:03
OK。说开发人员可以在这个程序中,那就是之后啊,就是在使用这个环节,开发人员呢,可以在程序当中访问调用它的静态成员的信息,或者呢,使用new关键字创建其这个对象实例。那刚才呢,我们讲主动使用的话呢,也提到过说调这个静态的成员信息对吧,但这块你注意咱们讲这块主动使用说的是啥呀,是首次咱们比如说调用你这个静态方法呀,静态字段的时候啊,咱们需要呢,主动的去使用一下,相当于要调那个C2D的这个方法对吧?那后边这块呢,主要说的是你后续如果还想掉。各种各样丰富的这个字段,静态字段啊,或静态方法呀,这个时候那你这块呢,都算是一个使用的环节,因为呢,我们只会加载一次,或者叫只只会初始化一次,对吧,那我们讲这个CR的时候,不是还提到它的安全性嘛,那就调用一次,那或者的话呢,我们通过这个new关键字呢,去创建这个类的这个实例,创建完实例以后呢,你还可以去调用它的那个非静态的那些字段的。
03:03
那这里边儿就涉及到一个场景,就是这呢是咱们的站,我就简单画一画,这呢是咱们这个堆,这呢是咱们这个方法区。当我们去加载一个类的时候呢,我们说这个方法区里边就会存放一个是不是叫类模板数据,对吧,我叫类模板对象,比如我们这个order类,那这个order类呢,就整个呢给我们放到这儿了,在这个堆空间当中,那Java虚拟拟呢,会给我们创建一个叫class的一个实例,这个实例的话呢,就指向了我们这个方法区域当中,你当前这个啊,我们称为呢叫运营实类了,或者叫类模板的这个结构,对吧。啊,那你这块你要生那个变量叫class呢,那你class就指一下这个一般都是在这个战争的局无变量表里边了,对吧。然后接下来的话呢,我们如果去调用一下你当前这个类的这个构造器,咱们可以new一个order的一个实例,那new的order实例呢,是放在咱们的堆空间当中的,那这个堆空间呢,我们有在上篇呢,是不是有讲过新生代,呃,新生代呢,我们就具体分成叫一元区SURVIVOR0区,SURVIVOR1区,对吧,这个老年代。
04:05
啊,还有这个我们说的这个,这我们叫old区了,那新生代样曲对吧,新生代老年代是不是还有一个这个永久带,永久带的话,我们这个主要的就是方法区了,那你得看诶具体GDK这个版本,那是叫永久带呀,还是叫这个原空间啊,对吧?啊这个就有所区别了。行啊,那具体这个关于对象分配的话呢,还涉及到一个优化的问题,那我们说在某些场景下呢,我们还可以叫占上分配内存,包括呢叫标量替换啊等等这样的一些场景,这个呢,都是咱们上品当中啊,主要涉及到一些问题,那我们下边的话呢,就涉及到调优啊,涉及到关于基于内存的这个GC调优,还包括这个代码层面,比如我们通过自己码指令看到的一些代码呢,存在优化空间,我们还可以进行代码的一个优化,对吧?哎,这呢,都是我们下篇当中给大家要讲的这个内容。行,那关于我们这个类的使用呢,这块就不用多去啰嗦了,是吧,这块我们就说到这儿。
我来说两句