JVM
文章平均质量分 91
JVM
Elson_6
Talk is cheap, show me the code.
展开
-
Android 虚拟机 (Dalvik & ART)
我们知道Android的程序虽然也是使用Java/Kotlin语言编码,并生成.class字节码,但并不能运行在JVM上,而是运行在自己的VM上。而Android程序之所以不能在JVM上运行的根本原因是.class字节码文件并不是Android的最终可执行文件,而是一个过渡产物,最终会生成dex文件在Android VM上执行。Dalvik 虚拟机和 ART 虚拟机。原创 2022-10-22 13:52:21 · 4189 阅读 · 0 评论 -
JVM(六) — JVM面试问题
Java的虚拟机的面试内容主要包括三部分:GC、类加载机制、内存。本文列举了几个关于这三个方面的问题。GC什么时候一个对象会被GC?为什么要在这种时候对象才会被GC? GC策略都有哪些分类?这些策略分别都有什么优劣势?都适用于什么场景?给你举个实际的场景,让你选择一个GC策略? 你如果选出来了,继续问你,为什么要选择这个策略?类加载机制Java的类加载器都有哪些? 每.........原创 2018-04-05 21:31:56 · 304 阅读 · 0 评论 -
JVM(五) — 类加载机制
虚拟机将描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被称为虚拟机的类加载机制。原创 2018-04-04 10:54:50 · 264 阅读 · 0 评论 -
JVM(四) — 垃圾回收机制
Java与C++之间有一堵由内存动态分配和垃圾收集技术围城的高墙,本文主要介绍Java中常见的垃圾回收算法和垃圾收集器的特点。原创 2018-04-05 13:43:19 · 396 阅读 · 0 评论 -
JVM(三) — Java虚拟机运行时内存结构
本文主要介绍Java虚拟机在执行Java程序过程中,内存的6个不同的数据区域。原创 2018-04-04 22:14:21 · 436 阅读 · 0 评论 -
JVM — 字节码文件分析
本文以一个具体的实例来分析一下字节码文件的格式。原创 2022-05-27 11:01:24 · 225 阅读 · 0 评论 -
JVM(二) — 字节码指令
Java虚拟机是基于操作数栈而非寄存器的架构,其操作指令由`操作码`和`操作数(0或多个操作数)`组成。- 操作码:操作码的长度为一个字节(0~255),因此操作码总数不能超过256条。- 操作数:一条指令可以有零或者多个操作数,且操作数可以是1个或者多个字节。...原创 2022-05-26 16:29:20 · 408 阅读 · 0 评论 -
JVM(一) — Class 文件结构
Class文件是一组以8位字节为单位的二进制流,各个数据项目严格按照顺序紧凑排列在Class文件中,中间没有任何分隔符。 当遇到需要占用8位以上的数据项时,则会按照高位在前、低位在后 (Big-endian顺序) 的方式来分割成多个8位字节进行存储。...原创 2022-05-20 16:33:06 · 343 阅读 · 0 评论