JVM
给我一个自信的表情
每天一点点
展开
-
Java虚拟机系列001
作为当今排名靠前的Java编程语言,要想学好Java语言,必须知其然知其所以然,对Java的语法,特征的掌握是基础,其次,对于Java是如何运作,对象如何创建的,GC是如何回收对象的,也必须有一个清楚的了解,这样才可以更好的了解JAVA是如何由编写,到编译,到运行的,我将整理Java系列,让大家对Java有个全新的了解。重点:语言只是用来开发的工具,只有先熟练运行工具才可以得心应手的进行开发,重在...原创 2018-11-01 11:59:45 · 429 阅读 · 0 评论 -
Java虚拟机系列002
运行时数据区域Java虚拟机在运行Java代码时,它会把他所管理的内存分为若干个不同的数据区域。这些区域都各有各的目的和用途,大致可分为一下几个区域:程序计数器,方法区,虚拟机栈,本地方法栈,堆。程序计数器:字节码的行号,编译器用来改变程序计数器来选取下一条需要执行的字节码指令,每个线程都有一个独立计数器。虚拟机栈:Java方法执行的内存模型,每个方法在执行的时候会生成一个栈帧,栈...原创 2018-11-01 15:12:32 · 169 阅读 · 0 评论 -
Java虚拟机系列003
JVM垃圾收集垃圾收集器的历史比Java久远,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。对于垃圾回收,我们首先考虑的是什么样的对象为可回收对象,即使对象什么时候判定为死亡,其次是什么时候进行回收,最后是如何回收。1.什么样的对象为可回收对象?当对象死亡,JVM便对其分配的内存进行回收,对其进行销毁。⑴如何判断对象死亡,即什么才算对象死亡?...原创 2018-11-01 15:25:07 · 117 阅读 · 0 评论 -
Java虚拟机系列004
垃圾收集器垃圾收集器是内存回收的具体实现。Java虚拟机规范中对垃圾回收器的实现并未有任何规定,因此,不同的厂商,不同的版本的虚拟机所提供的垃圾回收器可能差异很大。下面介绍几种不同的收集器。1.Serial收集器Serial收集器是一个最基本,发展悠久的收集器,曾经是虚拟机新生代收集的唯一选择(JDK1.3.1之前)。它是一个单线程的收集器,它的单线程有两方面的理解:一是它只会使用一个...原创 2018-11-02 08:21:01 · 205 阅读 · 0 评论 -
Java虚拟机系列005
JVM类加载本章节讲解Class文件中的信息进入到虚拟机后发生什么变化虚拟机把描述的类的数据从Class文件加载到内存,并对数据进行效验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是Java虚拟机的类加载机制。1.类加载的时机类加载的生命周期包括:加载,验证,准备,解析,初始化,使用,卸载7个阶段。其中验证,准备,解析3部分称为链接。加载,验证,准备,初始化...原创 2018-11-02 08:31:25 · 161 阅读 · 0 评论 -
Java8理解一
行为参数化行为参数化即将行为方法通过参数的形式传递给方法,来实现特定的功能。行为参数化是为了应对多变的需求,而降低代码的冗余而提出的。行为参数化是一种编程的思想,即它的实现时通过Java8提供的一些改变得以实现,在Java8之前,不能将方法作为参数传递给另一个方法。行为参数化解决了多变的需求;行为参数化实现了方法之间的解耦,功能之间更像是模块的方式,方便的增加和删除;行为参数化降低...原创 2019-01-27 11:26:35 · 418 阅读 · 0 评论 -
Java 11 : Epsilon 简介(上)
Epsilon:Release 11 ,HotSpot虚拟机提供的GC.特点:一个处理内存分配但不实现任何实际内存回收机制的GC,一旦可用的Java堆耗尽,JVM将关闭。目标:““Provide a completely passive GC implementation with a bounded allocation limit and the lowest late...翻译 2019-05-28 16:14:31 · 1882 阅读 · 0 评论