关于JVM调优,有哪些梗值得去学习呢?
对于一样事物,我总会问自己几个问题:
1)它是什么,包括什么内容?
2)它作什么用?解决什么问题?
一、是什么?
JVM是解析和运行.class二进制文件的东西。
包括好几部分:
1)栈:基本数据类型
2)堆:引用类型
3)方法区:类字节码
4)运行时数据池
5)本地方法区
二、什么用?
.class二进制文件是java文件编译后的产物,JVM也起到了操作系统OS和Java语言之间的桥梁作用,为Java语言提供跨平台的特点,因为不同的操作系统也有对应的JVM版本。
当我们运行java程序时,会启动一个jvm进程,classpath指定了java程序所用到的类的路径,通过classpath找到类并且将类放进运行时数据区和方法区,然后执行main方法。注意,jvm只会在用到ClassA的时候,才会去加载,并且只加载一次。
java类的加载机制是采用双亲委派模型的工作方式,就是说加载类的时候,首先委托给父加载器。这样的目的是当有相同类的时候,更高层次的类起作用,防止重要的类被后来者篡改。
时间: 2024-10-14 05:37:45