微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JVM 学习整理

JVM

基本介绍

概念

JVM的全称 Java Virtual Machine,JVM负责把java文件进行编译并且根据不同版本最终解释平台可以执行的机器指令,交给系统执行。

JVM也是有不同的版本,有很多不同的实现Sun/OracleJDK和OpenJDK中的认实现是HotSpot虚拟机。

java程序过程

image-20210415222951991

JVM内存区域

Java虚拟机执行java程序的的时候会对内存区域进行划分数据区域,为了提高程序执行效率,JVM虚拟机对程序解释执行的时候会对类的属性进行分区域保存(静态常量、类、程序运行时变量和字符串对象)等的内存进行分配。

image-20210415222951991

虚拟机栈:执行自定的方法

本地方法栈:执行本地方法

堆/方法区:不同的版本也是有所差异。

  • 1.6:有永久代,静态变量放在永久代。
  • 1.7:有永久代,但是字符串、静态变量放在堆上减少永久代使用。
  • 1.8:无永久代,运行时常量池、类常量池,都保存在元数据区(元空间),但是字符串常量池仍在堆上。

image-20210415225330953

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐