阅读《深入理解Java虚拟机》艺术第三章“垃圾收集器与内存分配策略”,对本章中重要概念进行抄写,以便后续记忆及理解。 ????在堆里存放着Java世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前...
分类:
其他好文 时间:
2015-08-11 08:39:35
阅读次数:
166
一、概述Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干不同的数据区域,这些区域都有各自的用途以及创建和销毁的时间。Java虚拟机所管理的内存将会包括以下几个运行时数据区域,如下图所示:下面就每一个区域进行阐述。二、运行时数据区域程序计数器程序计数器,可以看做是当前线程所执行的字...
分类:
编程语言 时间:
2015-08-10 20:00:30
阅读次数:
134
java语言支持两种形式的线程:互斥与协作。java虚拟机通过对象锁来实现互斥,允许多个线程在同一个共享数据上独立而互不干扰的工作。协作则是通过Object类的wait()方法和notify方法来实现的,允许多个线程为同一目标而共同工作。互斥是帮助线程在访问共享数据时不被其它线程干扰,而协作帮助线程与其它线程共同工作。
记得以前高中的时候,夏天每次下了晚自习,回到宿舍的时候,大家都想去洗个澡。但...
分类:
编程语言 时间:
2015-08-10 14:57:20
阅读次数:
257
本节介绍JAVA里static的作用和使用方法以及一些需要注意的问题.static表示"全局"或"静态",用来修饰成员变量和成员方法,以及代码块.被static修饰的成员变量和成员方法独立于该类的任何对象.也就是说,它不依赖类特定的实例,被类的所有实例共享.只要这个类被加载,JAVA虚拟机就能根据类...
分类:
编程语言 时间:
2015-08-09 22:24:02
阅读次数:
124
JVM在执行java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途和创建、销毁时间。有些区域随着虚拟机的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范1.7》规定,Java虚拟机所管理的内存分为以下几个区域:
程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区、运行时常量池、直接内存
程序计数器
是一块较小的内存...
分类:
其他好文 时间:
2015-08-09 20:47:15
阅读次数:
132
jstat,这个工具很强大,可以监测Java虚拟机GC多方面的状态,具体参数含义参见此链接:./jstat-gc8401210003S0CS1CS0US1UECEUOCOUPCPUYGCYGCTFGCFGCTGCT2112.02112.00.00.017024.00.063872.01319.921...
分类:
编程语言 时间:
2015-08-09 15:32:38
阅读次数:
111
首先,让我们来思考下面几个问题:什么是Dalvik虚拟机?Dalvik VM与JVM有什么区别?Dalvik VM有什么新的特点?Dalvik VM的架构是怎么样的?首先,我得承认第一个问题问得很傻:什么是Dalvik虚拟机?没有人给出过一个明确的定义,但是,我们似乎可以从人们对Java虚拟机的描述...
分类:
其他好文 时间:
2015-08-07 18:56:42
阅读次数:
106
操作系统是平台,可提供软件运行的环境,在系统上运行的软件是一个一个的进程,考虑到安全问题他们之间不能共享数据,所以是进程。线程包含在进程中,他们之间可以共享数据,java语言有自己的运行环境它就是jre,JRE是JVM(java虚拟机)和JDK(java开发工具包)组成,jvm又有编译器和解释器组成...
分类:
编程语言 时间:
2015-08-07 18:37:14
阅读次数:
191
|--方法区【线程共享】 ?? ??? ??? ?被所有线共享。 ?? ??? ??? ?存储被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码。 ?? ??? ??? ?在Java虚拟机规范把此区描述为堆...
分类:
其他好文 时间:
2015-08-07 16:39:45
阅读次数:
126
Java的反射机制是Java特性之一,反射机制是构建框架技术的基础所在。灵活掌握Java反射机制,对大家以后学习框架技术有很大的帮助。那么什么是Java的反射呢? 大家都知道,要让Java程序能够运行,那么就得让Java类要被Java虚拟机加载。Java类如果不被Java虚拟机加载,是不能正常运行的...
分类:
编程语言 时间:
2015-08-07 14:41:36
阅读次数:
111