当前位置: 首页 > article >正文

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上运行


http://www.kler.cn/a/392347.html

相关文章:

  • MySql结合element-plus pagination的分页查询
  • 2024年11月13日
  • 【ChatGPT】 如何让ChatGPT分析数据并得出结论
  • Linux kernel 堆溢出利用方法(二)
  • 【Spring】@Autowired与@Resource的区别
  • 想租用显卡训练自己的网络?AutoDL保姆级使用教程(PyCharm版)
  • 7. 基于 Redis 实现分布式锁
  • 基于Java Web的传智播客crm企业管理系统的设计与实现
  • 公开仓库改私有再配置公钥后Git拉取仍需要输入用户名的问题
  • 普通用户切换到 root 用户不需要输入密码配置(Ubuntu20)
  • vxe-table 3.10+ 进阶高级用法(一),根据业务需求自定义实现筛选功能
  • 【软考】系统架构设计师-计算机系统基础(2):操作系统
  • 【Linux】Linux 命令awk和sed的简单介绍
  • Vestar:AI造神邸,颠覆Meme叙事的新范式
  • 45.第二阶段x86游戏实战2-hook监控实时抓取游戏lua
  • 【python GUI编码入门-24】使用Tkinter构建一个简单的音乐播放器
  • 【Linux:IO多路复用(select函数)
  • 新的服务器Centos7.6 安装基础的环境配置(新服务器可直接粘贴使用配置)
  • 数据集标注txt文件读取小工具
  • # 如何查看 Ubuntu 版本?
  • Java | Leetcode Java题解之第559题N叉树的最大深度
  • 漏洞分析 | Spring Framework路径遍历漏洞(CVE-2024-38816)
  • 小波神经网络:结合小波变换与神经网络的力量(附Pytorch代码实现)
  • 详细介绍MySQL、Mongo、Redis等数据库的索引
  • Prometheus常用查询PromQL表达式
  • 国家网络安全法律法规