
jvm学习
ycjisme
2018级西南大学正经大学生
展开
-
《深入理解Java虚拟机第三版》读书笔记(4)虚拟机执行子系统
《深入理解Java虚拟机第三版》读书笔记(4)虚拟机执行子系统 代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。 一、Java语言无关性 Java虚拟机不与包括Java语言在内的任何程序语言绑定,它只与“Class文件”这种特定的二进制文件格式所关联,Class文件中包含了Java虚拟机指令集、符号表以及若干其他辅助信息。 作为一个通用的、与机器无关的执行平台,任何其他语言的实现者都可以将Java虚拟机作为他们语言的运行基础,以Class文件作为他们产品的交付媒原创 2020-10-27 20:18:41 · 122 阅读 · 0 评论 -
《深入理解Java虚拟机第三版》读书笔记(3)垃圾收集与内存分配
《深入理解Java虚拟机第三版》读书笔记(3)垃圾收集与内存分配 一、垃圾收集(GC) 垃圾收集主要是针对堆和方法区进行。程序计数器、虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后就会消失,因此不需要对这三个区域进行垃圾回收。 (一)判断一个对象是否存活 1、引用计数算法 在对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加一;当引用失效时,计数器值就减一;任何时刻计数器为零的对象就是不可能再被使用的(即可被回收)。 在两个对象出现循环引用的情况下,此时引用原创 2020-10-27 15:10:22 · 248 阅读 · 2 评论 -
《深入理解Java虚拟机第三版》读书笔记(2)Java内存区域与内存溢出异常
《深入理解Java虚拟机第三版》读书笔记(2)Java内存区域与内存溢出异常 Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。 一、运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而一直存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。 1、程序计数器 程序计数器(Program Counter Regist原创 2020-10-19 21:06:48 · 86 阅读 · 0 评论 -
《深入理解Java虚拟机第三版》读书笔记(1)走进java
《深入理解Java虚拟机第三版》读书笔记(1)走进java 一、Java技术体系 1、JCP官方定义的技术体系包括: Java程序设计语言 各种硬件平台上的Java虚拟机实现 Class文件格式 Java类库API 来自商业机构和开源社区的第三方Java类库 注:JCP(Java Community Process) 是一个开放的国际组织,主要由JAVA开发者以及被授权者组成,职能是发展和更新。 2、JDK与JRE划分 Java程序设计语言、Java虚拟机、Java类库这三部分统称为JDK(Java D原创 2020-10-19 21:03:14 · 154 阅读 · 0 评论