E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
【深入Java虚拟机】
如何阅读Java源码 ,阅读java的真实体会
说到技术基础,我打个比方吧,如果你从来没有学过Java,或是任何一门编程语言如C++,一开始去啃《CoreJava》,你是很难从中吸收到营养的,特别是《
深入Java虚拟机
》这类书,别人觉得好,未必适合现在的你
血煞风雨城2018
·
2018-11-16 15:06
java
源码阅读
深入Java虚拟机
(JVM)
阅读更多一.Java整体的运行结构以及与JVM的关系ClassLoader的在关键是告诉你,我要进行类加载,而在进行类加载的时候,就一定有一个正常的环境属性CLASSPATH,没有CLASSPATH就无法找到我们的目录所在,这样程序才会跑到JVM中解释运行。而JVM到底有什么组成结构呢?首先有一个执行引擎,它需要一个本地方法接口,通过本地方法接口调用本地一些资源,比如多线程、磁盘、内存分配等等。本
bijian1013
·
2018-11-10 22:00
java
jvm
虚拟机
深入Java虚拟机
(JVM)
阅读更多一.Java整体的运行结构以及与JVM的关系ClassLoader的在关键是告诉你,我要进行类加载,而在进行类加载的时候,就一定有一个正常的环境属性CLASSPATH,没有CLASSPATH就无法找到我们的目录所在,这样程序才会跑到JVM中解释运行。而JVM到底有什么组成结构呢?首先有一个执行引擎,它需要一个本地方法接口,通过本地方法接口调用本地一些资源,比如多线程、磁盘、内存分配等等。本
bijian1013
·
2018-11-10 22:00
java
jvm
虚拟机
深入Java虚拟机
(JVM)
阅读更多一.Java整体的运行结构以及与JVM的关系ClassLoader的在关键是告诉你,我要进行类加载,而在进行类加载的时候,就一定有一个正常的环境属性CLASSPATH,没有CLASSPATH就无法找到我们的目录所在,这样程序才会跑到JVM中解释运行。而JVM到底有什么组成结构呢?首先有一个执行引擎,它需要一个本地方法接口,通过本地方法接口调用本地一些资源,比如多线程、磁盘、内存分配等等。本
bijian1013
·
2018-11-10 22:00
java
jvm
虚拟机
Java源码阅读的真实体会(一种学习思路)
说到技术基础,我打个比方吧,如果你从来没有学过Java,或是任何一门编程语言如C++,一开始去啃《CoreJava》,你是很难从中吸收到营养的,特别是《
深入Java虚拟机
》这类书,别人觉得
GordonDicaprio
·
2018-11-04 15:00
Java学习之路(书籍推荐)
2、《
深入Java虚拟机
》(阅读2遍),翻译一般,但不可不读,最好结合最新的JVM规
CTO_1649900265
·
2018-10-19 09:21
java
深入JAVA虚拟机
之垃圾收集
前言:说起垃圾收集器,JAVA开发者肯定是听得耳朵都起茧子了。如果让你设计一个JAVA垃圾收集器,那么你关注那些点呢?//1.哪些内存需要回收?//2.什么时候回收?//3.如何回收?这篇博文就是记录这些问题答案的。闲言碎语不多讲,开始写。那些内存需要回收?我们先来回顾一下“运行时数据区”的知识点。我们都知道程序计数器、虚拟机栈、本地方法栈都是与线程同生共死的。栈中的栈帧分配多少内存在类结构确定下
刺激乐天派
·
2018-08-20 14:25
垃圾回收
GC技术
编程
如何阅读Java源码
假如你从来都没有学过Java,也没有其它编程语言的基础,上来就啃《CoreJava》,那样是很难有收获的,尤其是《
深入Java虚拟机
》这类书,或许别人觉得好,但是未必适合现在的你。
IamDingj
·
2018-08-15 11:19
java
深入JAVA虚拟机
之字节码执行引擎
前言:class文件结构、类加载机制、类加载器、运行时数据区这四个java技术体系中非常重要的知识,学习完了这些以后,我们知道一个类是通过类加载器加载到虚拟机,存储到运行时数据区,而且我们也知道了我们方法体内的代码被编译成字节码保存在方法表中的code属性中,那么虚拟机又是怎么执行这些代码的,得出方法输出结果的呢?这一节我们就要来学习,关于虚拟机字节码执行引擎的相关知识。通过这章节的学习,我们要掌
刺激乐天派
·
2018-08-14 15:21
字节码
静态类型
实例类型
编程
十年阿里架构师教你如何阅读源码
假如你从来都没有学过Java,也没有其它编程语言的基础,上来就啃《CoreJava》,那样是很难有收获的,尤其是《
深入Java虚拟机
》这类书,或许别人觉得好,但是未必适合现在的你。
didiaoxue9255
·
2018-08-13 18:00
深入JAVA虚拟机
之类加载器
前言:虚拟机设计团队把类加载阶段中"通过一个类的权限定名来获取描述此类的二进制字节流"这个动作放到虚拟机外部区实现,让程序自己决定如何去获取所需的类。实现这个动作的代码模块就被称为类加载器。它最初是为了满足JavaApplet的需求而被开发,而现在JavaApplet基本已经宣布死亡,但类加载器却在类层次划分、OSGi、热部署、代码加密等领域大放异彩。它是java技术体系中一块重要的基石。对于任意
刺激乐天派
·
2018-08-12 21:30
类加载器
启动
类加载器
编程
如何阅读Java源码?
假如你从来都没有学过Java,也没有其它编程语言的基础,上来就啃《CoreJava》,那样是很难有收获的,尤其是《
深入Java虚拟机
》这类书,或许别人觉得好,但是未必适合现在的你。
fygu18
·
2018-07-30 19:00
深入Java虚拟机
笔记--Java8内存结构
我们都知道,Java代码是要运行在虚拟机上的,而虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途。其中有些区域随着虚拟机进程的启动而存在,而有些区域则依赖用户线程的启动和结束而建立和销毁。在《Java虚拟机规范(JavaSE8)》中描述了JVM运行时内存区域结构如下:图片来源于网上。程序计数器(ProgramCounterRegister)该区域划
Jagger-Wang
·
2018-07-11 17:06
JVM
如何读源码
说到技术基础,我打个比方吧,如果你从来没有学过Java,或是任何一门编程语言如C++,一开始去啃《CoreJava》,你是很难从中吸收到营养的,特别是《
深入Java虚拟机
》这类书,别人觉得好,未必适合现在的你
JAVA少妇
·
2018-06-21 20:48
[web]服务端
java多线程的工作内存剖析
线程的工作内存都没有讲清楚,并且非常的误导人.大多数文章都直接丢了张图说每个线程里面有块空间叫工作内存,但实际上呢,按照java虚拟机规范的说法,每个线程都有自己私有的PC计数器和一个虚拟机栈,根本就没有所谓的工作内存.继续
深入
GaryMao123
·
2018-01-09 11:12
深入Java虚拟机
-类加载机制
Java虚拟机与程序的生命周期:在如下几种情况下,Java虚拟机将结束生命周期:–执行了System.exit()方法–程序正常执行结束–程序在执行过程中遇到了异常或错误而异常终止–由于操作系统出现错误而导致Java虚拟机进程终止类的加载,连接和初始化:•加载:查找并加载类的二进制数据•连接:–验证:确保被加载的类的正确性(若使用非javac编译的话可能会出错)–准备:为类的静态变量分配内存,并将
upheart-man
·
2017-12-18 19:38
JVM
深入java虚拟机
之类的初始化
类初始化是类加载过程的最后一个阶段,到初始化阶段,才真正开始执行类中的Java程序代码。虚拟机规范严格规定了有且只有四种情况必须立即对类进行初始化:遇到new、getstatic、putstatic、invokestatic这四条字节码指令时,如果类还没有进行过初始化,则需要先触发其初始化。生成这四条指令最常见的Java代码场景是:使用new关键字实例化对象时、读取或设置一个类的静态字段(stat
dw147258dw
·
2017-10-18 14:43
java基础
深入java虚拟机
之类的初始化
阅读更多类初始化是类加载过程的最后一个阶段,到初始化阶段,才真正开始执行类中的Java程序代码。虚拟机规范严格规定了有且只有四种情况必须立即对类进行初始化:遇到new、getstatic、putstatic、invokestatic这四条字节码指令时,如果类还没有进行过初始化,则需要先触发其初始化。生成这四条指令最常见的Java代码场景是:使用new关键字实例化对象时、读取或设置一个类的静态字段(
dwj147258
·
2017-10-18 14:00
Java虚拟机
类的
初始化
深入java虚拟机
之类的初始化
阅读更多类初始化是类加载过程的最后一个阶段,到初始化阶段,才真正开始执行类中的Java程序代码。虚拟机规范严格规定了有且只有四种情况必须立即对类进行初始化:遇到new、getstatic、putstatic、invokestatic这四条字节码指令时,如果类还没有进行过初始化,则需要先触发其初始化。生成这四条指令最常见的Java代码场景是:使用new关键字实例化对象时、读取或设置一个类的静态字段(
dwj147258
·
2017-10-18 14:00
Java虚拟机
类的
初始化
深入java虚拟机
之内存模型
阅读更多内存区域Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区。下面详细阐述各数据区所存储的数据类型。程序计数器(ProgramCounterRegister)一块较小的内存空间,它是当前线程所执行的字节码的行号指示器,字节码解释器工作
dwj147258
·
2017-10-18 13:00
Java虚拟机
内存模型
深入java虚拟机
之内存模型
阅读更多内存区域Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区。下面详细阐述各数据区所存储的数据类型。程序计数器(ProgramCounterRegister)一块较小的内存空间,它是当前线程所执行的字节码的行号指示器,字节码解释器工作
dwj147258
·
2017-10-18 13:00
Java虚拟机
内存模型
软件开发书籍推荐
难度等级1~5:1级最容易,5级最难重点推荐:《代码大全2》+《重构》+《大话设计模式》+《编码》+《
深入Java虚拟机
(原书第2版)》计算机系统《编码》难度:1简评:从硬件与软件角度讲述计算机是如何工作的
飘飘白云
·
2017-08-30 09:05
读书新知
Java class文件格式之访问标志信息_动力节点Java学院整理
本来写这个系列博客参考的是《
深入java虚拟机
》
zhangjg
·
2017-06-14 14:42
30套最实用JAVA学习视频教程合集
入门123”系列教学视频(23集)http://down.51cto.com/zt/1171“跟我学JavaWeb”视频教程和源码(全14集)http://down.51cto.com/zt/1195
深入
lcx556224523
·
2017-04-10 10:10
java视频
书单推荐
JVM⭐⭐⭐⭐⭐《垃圾回收的算法与实现》-中村成洋介绍了垃圾回收算法的方方面面⭐⭐⭐⭐⭐《HotSpot实战》-陈涛学习JVM实现和源码⭐⭐⭐⭐⭐《
深入java虚拟机
》网络⭐⭐⭐⭐⭐《TCP/IP详解》
Oo此岸花开oO
·
2017-04-08 09:13
读书笔记
深入JAVA虚拟机
-第二版
第一章JAVA体系结构介绍java应用程序可以使用两种类装载器,启动(bootstrap)类装载器和用户自定义装载器。每一个类被装载的时候,java虚拟机都监视着这个类,看它是被什么装载器装载的,当被装载的类引用了其他类的时候,会使用相同的类装载器去装载被引用的类。因此默认情况下只能看到被同一个类装载器装载的类,通过这种方法,java允许在java程序中简历多个命名空间,每一个类加载器都有自己的命
Kingty
·
2017-03-13 19:39
CGLib 动态生成 类及实例
前两天拜读
深入Java虚拟机
时,看到书里有提及可以用CGLib动态生成类及类实例的做法,就将CGLib下载下来一试.众所周知,Java在运行时加载Class字节码到虚拟机中运行.如下示例代码:try{URLurl
david_ding
·
2016-12-29 15:11
Java
深入java虚拟机
以及大数据
1.jvm的相关概念当List放了大量的数据超过jvm中所能容纳的内存后,就会发生堆溢出。当递归调用没有临界退出条件就会出现栈溢出。当批量导入大量数据或者用dom4j解析大的xml文件的时候,会出现堆溢出,这个时候可以通过分段批量提交以及用sax代替dom4j来解决问题。heap(堆),stack(栈)jvm的结构细分及其概述?Java虚拟机有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从
Sxueen
·
2016-11-30 08:12
java static块详解
参考《
深入Java虚拟机
》中的描述,一个javaclass的生命周期:装载通过类的全限定名,产生一个代表该类型的二进制数据流;解析这个二进制数据流为方法区内的数据结构;创建一个表示该类型的java.lang.Class
mfcliu
·
2016-07-03 20:28
java
static
块
java.basic
深入Java虚拟机
JVM类加载初始化学习笔记
1.Classloader的作用,概括来说就是将编译后的class装载、加载到机器内存中,为了以后的程序的执行提供前提条件。2.一段程序引发的思考:风中叶老师在他的视频中给了我们一段程序,号称是世界上所有的Java程序员都会犯的错误。一般不假思索的结论就是,a=1,b=1。给出的原因是:a、b都是静态变量,在构造函数调用的时候已经对a和b都加1了。答案就都是1。但是运行完后答案却是a=1,b=0。
javaniuniu
·
2016-06-29 10:00
java
java
对象
javaweb
java教程
ee
深入java虚拟机
(九)--常见问题总结
1.JVM运行时内存结构1.由如下图构成。RuntimeDataArea有如下几个区,其中PC程序计数器、虚拟机栈和本地方法栈是线程独享的,堆和方法区是线程共享的。Classload用来加载class文件,执行引擎用来执行程序,本地方法接口调用本地方法库。2.javastack比较简单,每一个都是一个栈帧,每个栈帧由三部分构成。局部变量区、操作数区和帧数据区。局部变量是一个以数组形式管理的内存区,
JordanInShenzhen
·
2016-06-16 13:55
java
虚拟机
class
对象
深入java虚拟机
深入java虚拟机
(九)--常见问题总结
1. JVM运行时内存结构1.由如下图构成。RuntimeDataArea有如下几个区,其中PC程序计数器、虚拟机栈和本地方法栈是线程独享的,堆和方法区是线程共享的。Classload用来加载class文件,执行引擎用来执行程序,本地方法接口调用本地方法库。2.javastack比较简单,每一个都是一个栈帧,每个栈帧由三部分构成。局部变量区、操作数区和帧数据区。局部变量是一个以数组形式管理
JordanInShenzhen
·
2016-06-16 13:00
java
虚拟机
对象
Class
深入java虚拟机
(八)--Java垃圾收集机制
对象引用Java中的垃圾回收一般是在Java堆中进行,因为堆中几乎存放了Java中所有的对象实例。谈到Java堆中的垃圾回收,自然要谈到引用。在JDK1.2之前,Java中的引用定义很很纯粹:如果reference类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。但在JDK1.2之后,Java对引用的概念进行了扩充,将其分为强引用(StrongReference)、
JordanInShenzhen
·
2016-06-16 06:57
java
虚拟机
对象
class
深入java虚拟机
深入java虚拟机
(七)--Javac编译与JIT编译
编译过程不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的目标代码或虚拟机能执行的指令集之前,都会按照如下图所示的各个步骤进行:其中绿色的模块可以选择性实现。很容易看出,上图中间的那条分支是解释执行的过程(即一条字节码一条字节码地解释执行,如JavaScript),而下面的那条分支就是传统编译原理中从源代码到目标机器代码的生成过程。如今,基于物理机、虚拟机等的语言,大多都遵循这
JordanInShenzhen
·
2016-06-16 06:34
深入java虚拟机
深入java虚拟机
(六)--Java语法糖
语法糖(SyntacticSugar),也称糖衣语法,是由英国计算机学家Peter.J.Landin发明的一个术语,指在计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。Java中最常用的语法糖主要有泛型、变长参数、条件编译、自动拆装箱、内部类等。虚拟机并不支持这些语法,它们在编译阶段就被还原回了简单的基础语法结构,这个过程成为解语法糖。泛型是JDK1.5之后引入的
JordanInShenzhen
·
2016-06-16 06:15
java
虚拟机
深入java虚拟机
深入java虚拟机
(八)--Java垃圾收集机制
对象引用 Java中的垃圾回收一般是在Java堆中进行,因为堆中几乎存放了Java中所有的对象实例。谈到Java堆中的垃圾回收,自然要谈到引用。在JDK1.2之前,Java中的引用定义很很纯粹:如果reference类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。但在JDK1.2之后,Java对引用的概念进行了扩充,将其分为强引用(Strong Referen
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
对象
Class
深入java虚拟机
(七)--Javac编译与JIT编译
编译过程 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的目标代码或虚拟机能执行的指令集之前,都会按照如下图所示的各个步骤进行: 其中绿色的模块可以选择性实现。很容易看出,上图中间的那条分支是解释执行的过程(即一条字节码一条字节码地解释执行,如JavaScript),而下面的那条分支就是传统编译原理中从源代码到目标机器代码的生成过程。 如今,基于物理机、虚拟机等的
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
技术
深入java虚拟机
(六)--Java语法糖
语法糖(Syntactic Sugar),也称糖衣语法,是由英国计算机学家Peter.J.Landin发明的一个术语,指在计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。Java中最常用的语法糖主要有泛型、变长参数、条件编译、自动拆装箱、内部类等。虚拟机并不支持这些语法,它们在编译阶段就被还原回了简单的基础语法结构,这个过程成为解语法糖。 泛型是JDK1.5
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
深入java虚拟机
(五)--多态性实现机制——静态分派与动态分派
方法解析Class文件的编译过程中不包含传统编译中的连接步骤,一切方法调用在Class文件里面存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址。这个特性给Java带来了更强大的动态扩展能力,使得可以在类运行期间才能确定某些目标方法的直接引用,称为动态连接,也有一部分方法的符号引用在类加载阶段或第一次使用时转化为直接引用,这种转化称为静态解析。这在前面的“Java内存区域与内存溢出”
JordanInShenzhen
·
2016-06-16 06:59
深入java虚拟机
深入java虚拟机
(四)--类加载机制
类加载过程 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。它们开始的顺序如下图所示: 其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化这四个阶段发生的顺序是确定的,而解析阶段则不一定,它在某些情况下可以在初始化阶段之后开始,这是为了支持Java语言的运行时绑定(也
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
内存
深入java虚拟机
(五)--多态性实现机制——静态分派与动态分派
方法解析 Class文件的编译过程中不包含传统编译中的连接步骤,一切方法调用在Class文件里面存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址。这个特性给Java带来了更强大的动态扩展能力,使得可以在类运行期间才能确定某些目标方法的直接引用,称为动态连接,也有一部分方法的符号引用在类加载阶段或第一次使用时转化为直接引用,这种转化称为静态解析。这在前面的“Java内存区域与内存溢
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
多态
深入java虚拟机
(三)--类初始化
类初始化是类加载过程的最后一个阶段,到初始化阶段,才真正开始执行类中的Java程序代码。虚拟机规范严格规定了有且只有四种情况必须立即对类进行初始化:遇到new、getstatic、putstatic、invokestatic这四条字节码指令时,如果类还没有进行过初始化,则需要先触发其初始化。生成这四条指令最常见的Java代码场景是:使用new关键字实例化对象时、读取或设置一个类的静态字段(stat
JordanInShenzhen
·
2016-06-16 06:23
java
虚拟机
深入java虚拟机
深入java虚拟机
(三)--类初始化
类初始化是类加载过程的最后一个阶段,到初始化阶段,才真正开始执行类中的Java程序代码。虚拟机规范严格规定了有且只有四种情况必须立即对类进行初始化:遇到new、getstatic、putstatic、invokestatic这四条字节码指令时,如果类还没有进行过初始化,则需要先触发其初始化。生成这四条指令最常见的Java代码场景是:使用new关键字实例化对象时、读取或设置一个类的静态字段(st
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
深入java虚拟机
(二)--Class类文件结构
平台无关性 Java是与平台无关的语言,这得益于Java源代码编译后生成的存储字节码的文件,即Class文件,以及Java虚拟机的实现。不仅使用Java编译器可以把Java代码编译成存储字节码的Class文件,使用JRuby等其他语言的编译器也可以把程序代码编译成Class文件,虚拟机并不关心Class的来源是什么语言,只要它符合一定的结构,就可以在Java中运行。Java语言中的各种变量、
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
Class
结构
深入java虚拟机
(二)--Class类文件结构
平台无关性Java是与平台无关的语言,这得益于Java源代码编译后生成的存储字节码的文件,即Class文件,以及Java虚拟机的实现。不仅使用Java编译器可以把Java代码编译成存储字节码的Class文件,使用JRuby等其他语言的编译器也可以把程序代码编译成Class文件,虚拟机并不关心Class的来源是什么语言,只要它符合一定的结构,就可以在Java中运行。Java语言中的各种变量、关键字和
JordanInShenzhen
·
2016-06-16 06:00
深入java虚拟机
深入java虚拟机
(一)--Java内存区域与内存溢出
内存区域 Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区。下面详细阐述各数据区所存储的数据类型。 程序计数器(Program Counter Register) 一块较小的内存空间,它是当前线程所执行的字节码的行号指示器,
JordanInShenzhen
·
2016-06-16 06:00
java
虚拟机
内存溢出
java并发编程(六)--volatile意外问题的正确分析解答
这两天看《
深入Java虚拟机
——JVM高级特性与最佳实践》第12章:Java内存模型与线程,并在网上查阅了Java
JordanInShenzhen
·
2016-06-13 11:00
java
多线程
编程
并发
技术
C#之int与Java之Integer的区别
本文涉及到一些JVM原理和Java的字节码指令,推荐感兴趣的读者阅读一本有关JVM的经典书籍《
深入Java虚拟机
(第2版)》,将它与我在《.NET4.0面向对象编程漫谈》中介绍的CLR原理与IL汇编指令作个对比
xyzhu
·
2016-05-23 16:00
深入Java虚拟机
学习笔记 - 垃圾收集器
HotSpotJVM收集器上面有7中收集器,分为两块,上面为新生代收集器,下面是老年代收集器。如果两个收集器之间存在连线,就说明它们可以搭配使用。Serial(串行GC)收集器Serial收集器是一个新生代收集器,单线程执行,使用复制算法。它在进行垃圾收集时,必须暂停其他所有的工作线程(用户线程)(stoptheworld)。是Jvmclient模式下默认的新生代收集器。对于限定单个CPU的环境来
限量发行x
·
2016-05-20 10:11
Java
Java虚拟机
2016.05.03 Java 简单介绍(java编程思想&&
深入java虚拟机
)
Sun官方定义java技术体系:{ 1.java语言2.java虚拟机3.javaAPI类库4.class文件格式5.第三方的类库}JDK(javadevelopmentkit)java开发工具包{1.java语言2.java虚拟机3.javaAPI类库}(java程序开发的最小环境)JRE(javaruntimeenvironment)java运行时{1.java虚拟机2.javaseAP
lijinxiong520
·
2016-05-05 12:00
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他