Java文件执行过程

首先说下内存的概念

JVM在内存里开辟内存,然后把开辟的内存分为三部分,

  栈内存(后进先出,先进后出)就像是装子弹一样,先装的那颗子弹,只能最后射出来。

  堆内存,它是一个仓库,堆东西的。

  存储区(自己定义的名字),分为三部分,第一部分叫常量缓冲区(常量池)

  第二部分叫做方法区,它存储的是方法所对应的类模板。

  第三部分叫静态元素区,static

  

  存储区的特点:所有的元素只有一份,不能改变。

java文件运行思路

  一开始保存在磁盘里,然后被javac编译成class文件,再映射到内存的方法区中,java命令执行的就是方法区的类模板。

  其中,它有一个默认执行过程:有一个类加载器,叫classLoader。它将硬盘的字节码文件的信息搬运到内存中。

 

所有的执行都在栈内存里

比如:

  byte x=1;

  x是在栈内存里开辟一个名字叫x的内存,它只能存byte类型的数据。

 1存在变量空间里

  =是赋值,它把常量区找到1复制一份到x内存空间里

posted @ 2019-07-02 20:58  不希望有明天  阅读(382)  评论(0编辑  收藏  举报