Java虚拟机
文章平均质量分 92
仰子瞻
学习中
展开
-
Java虚拟机
前面写了几篇关于Java虚拟机和字节码的文章,由于没有进行系统的整理,导致在阅读的过程中很难有一个清晰的框架和思路,今天就在回顾的基础上以及加上新的理解,统一整理如下。一、Java虚拟机的概念Java虚拟机(Java Virtual Machine,JVM),一种能够运行Java字节码的虚拟机。作为一种编程语言的虚拟机,实际上不只是专用于Java语言,只要生成的编译文件匹配JVM对加载编译...原创 2020-03-07 17:10:38 · 197 阅读 · 0 评论 -
Java字节码
我们通常将.java文件通过javac命令编译后的.class文件称为字节码,是由于.class文件是由十六进制的值组成,而JVM以两个十六进制值(即一个字节)为一组进行读取,因此称之为字节码下面看一下字节码的内容格式,以如下Test.java为例public class Test { public static void main(String[] args) { ...原创 2019-09-07 16:36:06 · 258 阅读 · 0 评论 -
汇编语言对i++和++i的分析
++:自加,这是个单目运算符,i++表示先把操作数放入表达式中运算,然后才把操作数加1;++i表示先把操作数加1,然后才把操作数放入表达式中运算。我们已经知道了含义,下面通过几段代码来对其进行更深入的分析public class Test { public static void main(String[] args) { int i = 0; in...原创 2019-10-20 15:13:08 · 768 阅读 · 0 评论 -
Java虚拟机内存划分
简介:Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销毁如下介绍各个内存区域的用途以及创建和销毁时间1、程序计数器作用:保存当前线程所执行的字节码的行号,即该字节码执行到了哪一行;字节码解释器工作时就是通过改变这个...原创 2019-08-05 08:46:42 · 197 阅读 · 0 评论 -
JVM类加载机制
该文章中的文字大部分摘自于周志明版的《深入理解Java虚拟机》一、类加载的定义虚拟机把描述类的数据从.class文件加载到内存,并对数据进行验证、准备、解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制二、类加载的阶段类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括了:加载(Loading)、验证、准备、解析、初始化(Init...原创 2019-10-11 15:01:44 · 494 阅读 · 0 评论