码迷,mamicode.com
首页 >  
搜索关键字:java虚拟机    ( 4370个结果
从一道面试题来认识java类加载时机与过程
说明:本文的内容是看了《深入理解Java虚拟机:JVM高级特性与最佳实践》后为加印象和理解,便记录了重要的内容。 1 ?开门见山 以前曾经看到过一个java的面试题,当时觉得此题很简单,可是自己把代码运行起来,可是结...
分类:编程语言   时间:2015-03-17 18:23:55    阅读次数:229
Java内存区域
程序计数器 指令执行的指示器. 每个线程都有独立的程序计数器,互无影响,我们称这类区域为线程私有的内存. 执行Java方法,计数器记录的是正在执行的虚拟机字节码指令地址;如果执行的是native方法,这个计数器为空. 此内存区域唯一一个没有规定任何OutOfMemoryError的区域. 虚拟机栈 Java虚拟机栈也是线程私有的,它的生命周期与线程相同. 虚拟机栈描述的是Java方法执行的内存模型:...
分类:编程语言   时间:2015-03-17 10:27:53    阅读次数:176
JVM——垃圾回收(GC)
GC简介java语言运行在java虚拟机(jvm)上,为了解决有限的空间和性能的保证这个矛盾体,jvm所具备的GC能力,可以有效的清除不用的对象,使空间的利用更加合理。下面介绍该机制的原理。判断对象已废弃 引用计数法 给每一个对象都配备一个计数器,对于该对象,若增加一个指向它的引用,则计数器加1;每失效一个引用,则计数器减一。 但是,如果两个对象互相引用,但都对于外部都已失去用途,则这样的两个对...
分类:其他好文   时间:2015-03-17 00:50:55    阅读次数:128
Android运行环境Dalvik模式和ART模式的区别
Android系统是以Linux系统为底层构建的,开源的Android系统需要配置到不同硬件配置的设备上,为了降低应用的开发难度,在Linux底层之上构筑了一个名为"Dalvik"的虚拟机,名为虚拟机,实际是一种应用编译模式,Android4.4开始引入的ART模式是一种全新的应用编译模式。 Dalvik模式: Dalvik是Google公司自己设计用于Android平台的Java虚拟机,Da...
分类:移动开发   时间:2015-03-16 16:31:38    阅读次数:157
深入理解Java虚拟机
一、垃圾收集Java虚拟机的堆里存放着正在运行的java程序所创建的所有对象。当一个对象不再被程序引用时,它所使用的堆空间可以被回收,以便后续的新对象所使用。垃圾收集器必须能够断定哪些对象是不再被引用的,并且能够把它们所占据的堆空间释放出来。在释放不再被引用的对象的过程中,垃圾收集器运行将要被释放的对象的终结方法(finalizer)。除了释放不再被引用的对象,垃圾收集器还要处理堆碎片。在一个虚拟内...
分类:编程语言   时间:2015-03-16 12:56:34    阅读次数:168
关于java项目中的.classpath文件:
Classpath是Java中的重要概念:它描述了Java虚拟机在运行一个Class时在哪些路径中加载要运行的类以及运行的类要用到的类简单的说,就是像操作系统的path只不过这个classpath是由Java的虚拟机来使用查找需要加载的类而操作系统的path是由操作系统用来查找用户输入的可执行程序同...
分类:编程语言   时间:2015-03-14 22:56:01    阅读次数:227
《深入理解Java虚拟机》学习笔记(一)
JDK是支持Java程序开发的最小环境集,JRE是支持Java程序运行的标准环境,JRE是JDK的一部分。 Java1.0版本诞生于1995年,其使用的虚拟机是SunClassiscVM,这款虚拟机已经不再使用。JDK1.3时,HotSpotVM成为了默认的虚拟机。其他较为出名的Java虚拟机...
分类:编程语言   时间:2015-03-14 13:41:55    阅读次数:617
原型模式
原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件: 实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clone方法。在java虚拟机中,只有实现了这个接口的类才可以被拷贝,否则在运行时会抛出CloneNotSupportedEx...
分类:其他好文   时间:2015-03-14 09:36:27    阅读次数:140
JVM概论
引子 Java虚拟机是Java应用程序的执行环境。通常而言,JVM是由一组严格的指令集和一个复杂的内存模型来具体实现的虚拟机,它用来解释编译好的java字节码文件,将字节码转换为特定机器可以执行的本机代码(native code)。它也可以指代某一软件运行时的进程实例。这里,我们以hotspot.....
分类:其他好文   时间:2015-03-13 23:41:40    阅读次数:193
Java内存区域——JVM系列<一>
Java虚拟机运行时数据区 运行时数据区主要包括:方法区、堆、虚拟机栈、本地方法栈、程序计数器。 其中方法区和栈是线程共享的区域,另外三块区域是每个线程私有的区域。各个数据区的功能简单说明如下: 程序计数器:当前线程所执行的字节码的行号指示器。 虚拟机栈:描述Java方法执行的内存模型——每个方法在执行的同时都会创建一个栈帧用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法...
分类:编程语言   时间:2015-03-13 22:24:59    阅读次数:223
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!