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

JVM基础

JVM组成部分

字节码

字节码文件的查看工具:https://github.com/ingokegel/jclasslib

一般信息

JDK与字节码版本不兼容报错异常如下:

常量池

方法

面试常见问题

i++时,i的值为0;而++1时,i的值为1

public class A {public static void main(String[] args) {int i = 0, j = 0, k = 0;i++;j = j + 1;k += 1;}
}

查看字节码的工具

javap(适用于程序部署后)

jclasslib插件(适用于本地调试)

arthas(适用于程序处于运行中使用)

下载 | arthas (aliyun.com)icon-default.png?t=O83Ahttps://arthas.aliyun.com/doc/download.html

arthas的安装

安装请按照官方文档执行

快速入门 | arthas (aliyun.com)icon-default.png?t=O83Ahttps://arthas.aliyun.com/doc/quick-start.html#_1-%E5%90%AF%E5%8A%A8-math-game

查看 dashboard

dashboard | arthas (aliyun.com)icon-default.png?t=O83Ahttps://arthas.aliyun.com/doc/dashboard.html

dump查看字节码

jad查看原代码

类的生命周期

类加载

类加载器将类的信息加载到内存中,jvm在方法区和堆区各分配一个对象,用于保存类的信息

连接

验证

准备

解析

初始化

初始化的内容

触发类初始化的时机

不会触发初始化的情况

类加载器

类加载器的分类

使用arthas查看程序中类加载器的情况

启动类加载器

拓展类加载器与应用程序加载器

双亲委派机制

面试:类的双亲委派机制是什么?


http://www.mrgr.cn/news/31488.html

相关文章:

  • Elasticsearch中什么是倒排索引?
  • 【在Linux世界中追寻伟大的One Piece】多路转接epoll
  • 商品规格递归拼接
  • 基于物联网的智能超市快速结算系统
  • 《一本书讲透 Elasticsearch》京东评论采集+存储+可视化全 AI 实现
  • go语言中的接口含义和用法详解
  • 【有啥问啥】OpenAI o1的思考之前训练扩展定律、后训练扩展定律与推理扩展定律:原理与应用详解
  • 基于Python与K-Means的自动化视频分类方法
  • 举例说明偏差的计算方式和在计算协方差中的作用
  • 欠款管理代码———未来之窗行业应用跨平台架构
  • 下载 B 站封面的正确方式
  • 系统架构设计师 SOA与微服务架构篇
  • 聊聊Thread Local Storage
  • 02.06、回文链表
  • Track 09:X-XMCL
  • 十种果冻的做法
  • Python习题 191:将英文句子转为每个单词组成的列表
  • 秒懂Linux之消息队列与信号量(了解)
  • 酸枣病虫害智能化防控系统的探索与实践,基于YOLOv5全系列【n/s/m/l/x】参数模型开发构建枣类作物种植场景下酸枣病虫害智能检测识别系统
  • 第二十一节:学习Redis缓存数据库的Hash操作(自学Spring boot 3.x的第五天)
  • go语言Map详解
  • 深度学习简历面试知识——transformer、VGGish、K-means、峰值检测
  • SQL编程题复习(24/9/20)
  • VM虚拟机使用的镜像文件下载
  • Linux:虚拟文件系统/proc和self进程
  • [Unity Demo]从零开始制作空洞骑士Hollow Knight第六集:制作小骑士完整的跳跃落地行为