JVM(一、基础知识)

JVM虚拟机的灵魂三问

JVM是什么?

广义上是一种规范,狭义上的是JDK中的JVM虚拟机,虚拟机模拟计算机的组成部分,可以运行我们写的应用程序,是对操作系统的一层抽象,把我们的应用程序和操作系统解耦,实现JAVA中一大特性,一次编写,到处运行。

为什么要学习JVM?

JVM相当于我们应用程序运行在的操作系统,当操作系统出现oom、性能不足各种的情况,就需要根据操作系统的特性,排查这些问题,同样,在JVM中,我们都要懂JVM的原理,才能去更好的解决这些问题.

怎么学习JVM?

JVM基本概念->类加载系统->运行时数据区->对象的声明周期->GC收集器->实战

JVM架构图

  • Class Loader System:类加载系统,把应用程序的类加载到内存中运行
  • Runtime Data Area:运行时数据区,存放应用程序运行时的数据
  • Execution Engine:执行引擎

注:各个模块中的细节后续文章会解释

Java和JVM的关系

JVM是一个java语言的运行环境,更准确地说是class格式文件的运行环境,只要语言可以编译成.class文件,都可以在JVM上运行

相关推荐
SL_staff24 分钟前
规则联动:给工厂装上‘自动化神经反射弧’——JVS·物联网平台规则引擎实战教程
java·人工智能·物联网
骑着蜗牛撵大象32731 分钟前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信
WJ.Polar1 小时前
Java封装、继承、多态
java·开发语言
ly76891 小时前
PostgreSQL 备份恢复策略:pg_basebackup、WAL 归档与 PITR 在企业 Java 系统中的落地
java·数据库·postgresql·pitr·pg_basebackup·wal 归档
摇滚侠1 小时前
Java 中如何表示负数,有符号和无符号的区别,补码的计算规则,char byte short int long 的范围
java·开发语言
奇牙coding1 小时前
Codex CLI 升级后多文件编辑静默失效:config.yaml 枚举变更排查与修复指南
java·前端·javascript·ai
小羊没烦恼!2 小时前
Ajax与JSON的一些总结
android·java·前端·数据库·mysql·算法·okhttp
Lhappy嘻嘻2 小时前
读懂 JVM:内存模型、类加载机制、分代回收
java·开发语言·jvm
黄俊懿2 小时前
【架构师从入门到进阶】第六章:服务集群优化——第八节:线程数公式
java·服务器·数据库·分布式·性能优化·架构·系统架构
Rain的Java大神之路2 小时前
别再死磕 MySQL 了:向量数据库与 RAG 生产落地实录(Java 工程师专场)
java·后端·面试