博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java文件执行过程
阅读量:5119 次
发布时间:2019-06-13

本文共 507 字,大约阅读时间需要 1 分钟。

首先说下内存的概念

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

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

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

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

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

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

  

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

java文件运行思路

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

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

 

所有的执行都在栈内存里

比如:

  byte x=1;

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

 1存在变量空间里

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

转载于:https://www.cnblogs.com/LixiaoFeng1650062546/p/11123112.html

你可能感兴趣的文章
服务器解析请求的基本原理
查看>>
[HDU3683 Gomoku]
查看>>
【工具相关】iOS-Reveal的使用
查看>>
数据库3
查看>>
存储分类
查看>>
下一代操作系统与软件
查看>>
【iOS越狱开发】如何将应用打包成.ipa文件
查看>>
[NOIP2013提高组] CODEVS 3287 火车运输(MST+LCA)
查看>>
Yii2 Lesson - 03 Forms in Yii
查看>>
Python IO模型
查看>>
Ugly Windows
查看>>
DataGridView的行的字体颜色变化
查看>>
Java再学习——关于ConcurrentHashMap
查看>>
如何处理Win10电脑黑屏后出现代码0xc0000225的错误?
查看>>
局域网内手机访问电脑网站注意几点
查看>>
[Serializable]的应用--注册码的生成,加密和验证
查看>>
Day19内容回顾
查看>>
第七次作业
查看>>
SpringBoot项目打包
查看>>
Linux操作系统 和 Windows操作系统 的区别
查看>>