Java Vm
明月几时有1116
这个作者很懒,什么都没留下…
展开
-
Java 反编译命令javap
javap是jdk自带的一个工具,可以对代码反编译,也可以查看java编译器生成的字节码。一般情况下,很少有人使用javap对class文件进行反编译,因为有很多成熟的反编译工具可以使用,比如jad。但是,javap还可以查看java编译器为我们生成的字节码。通过它,可以对照源代码和字节码,从而了解很多编译器内部的工作。实例javap命令分解一个class文件,它根据o转载 2016-07-05 16:27:20 · 27903 阅读 · 2 评论 -
JVM指令详解
一、未归类系列A此系列暂未归类。指令码 助记符 说明0x00 nop 什么都不做0x01 aconst_null 将null推送至栈顶二、const系列该系列命令主转载 2016-07-05 16:34:10 · 3113 阅读 · 2 评论 -
Java内存模型
Java虚拟机和真实的计算机一样,运行的都是二进制的机器码;而我们将.java 源代码编译成.class 文件,class文件便是Java虚拟机能够认识的二进制机器码,Java能够识别class文件中的信息和机器指令,进而执行这些机器指令。那么,Java虚拟机是如何运行这些二进制的机器码的呢? 本文将通过一个非常简单的例子,带你感受一下Java虚拟机运行机器码的过程原创 2016-07-05 16:44:51 · 413 阅读 · 0 评论 -
类加载机制
类加载过程类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。它们开始的顺序如下图所示:其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化这四个阶段发生的顺序是确定的,而解析阶段则不一定,它在某些情况下可以在初始化阶段之后开始,这是为了支持 Java 语原创 2016-07-06 14:56:51 · 374 阅读 · 0 评论 -
内存泄漏小例子
由于申请的内存没有释放,导致这块内存一直处于占用状态转载 2018-01-12 15:35:09 · 1104 阅读 · 0 评论