![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 75
lxlzhn
热爱技术,热爱互联网!
展开
-
Android耳机声音自动调整
Android耳机声音自动调整:android下面监测耳机事件首先注册一个receiver, 使用的IntentFilter包含Intent.ACTION_HEADSET_PLUG, 这样在receiver的onReceive函数里就可以监测到耳机拔出和插入的事件了。 例如下面的代码: if(action.equals(Intent.ACTION_HEADSET_PLUG)){ //headphone plugged if(inten原创 2011-02-27 17:16:00 · 435 阅读 · 0 评论 -
java类加载器-Bootstrap、 ExtClassLoader、 AppClassLoader的关系
过去总是喜欢看,但不怎么做实验,或者是实验做了就仍了,也不记录,结果导致:看了忘,忘了看。这回重读《深入体验Java_Web开发内幕-核心基础》,恰好提到,顺便记录一下吧。 1. 简单介绍 Bootstrap、 ExtClassLoader、 AppClassLoader是java最根正苗红的类加载器。Bootstrap是本地代码编写的(例如C), Ex转载 2012-09-19 17:23:19 · 110 阅读 · 0 评论 -
JVM概念之Java对象的大小与引用类型
本文来自和你在一起的博客,原文标题:《JVM调优总结(二)-一些概念》。本文总结了JVM概念中的Java对象的大小,以及三种引用类型的定义与区分。 基本数据的类型的大小是固定的,这里就不多说了。对于非基本类型的Java对象,其大小就值得商榷。 在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有任何属性的对象的大小。看下面语句: Object ob =转载 2011-12-16 17:03:27 · 400 阅读 · 0 评论 -
有关JVM处理Java数组方法的思考
本文来自jarfield的博客,原文标题为《为什么如此获取Java数组的长度》。 记得vamcily 曾问我:“为什么获取数组的长度用.length(成员变量的形式),而获取String的长度用.length()(成员方法的形式)?” 我当时一听,觉得问得很有道理。做同样一件事情,为什么采用两种风格迥异的风格呢?况且,Java中的数组其实是完备(full-fledged)的对象,直接暴转载 2011-12-16 16:54:17 · 466 阅读 · 0 评论 -
深入Java虚拟机:JVM中的Stack和Heap
在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。 一般,JVM的内存分为两部分:Stack和Heap。 Stack(栈)是JVM的内存指令区。Stack管理很简单,push一定长度字节的数据或者指令,Stack指针压栈相应的字节位移;pop一定字节长度转载 2011-12-16 16:41:40 · 424 阅读 · 0 评论 -
深入Java虚拟机:JVM中的Stack和Heap
在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。 一般,JVM的内存分为两部分:Stack和Heap。 Stack(栈)是JVM的内存指令区。Stack管理很简单,push一定长度字节的数据或者指令,Stack指针压栈相应的字节位移;pop一定字节长度转载 2011-12-16 16:41:36 · 63 阅读 · 0 评论 -
JVM基础概念总结:数据类型、堆与栈
本文来自和你在一起的博客,原文标题为《JVM调优总结(一)-- 一些概念》。 数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。 基本类型包括:byte, shor转载 2011-12-16 14:17:39 · 422 阅读 · 0 评论 -
JVM JRE JDK,这些东西到底是什么?
JVM JRE JDK,这些东西到底是什么? 我们在安装好JDK后就可以想象成我们已经买了一台安装好软件的新的电脑。 JVM : Java Virtual Machine(Java虚拟机) 。所谓“虚拟机”顾名思义就是模拟出来的东西。就像是我们在用电脑看电视,但是电脑里并没有像电视机里面一样的硬件支持,但是我们仍然可以从电脑里接受电视台的节目。那是因为我们编写了一个可以模拟电视机硬件工转载 2011-12-16 14:05:09 · 664 阅读 · 0 评论 -
JVM分代垃圾回收策略的基础概念
本文来自和你在一起的博客,原文标题为《JVM调优总结(五)-分代垃圾回收详述1》。文章总结了JVM垃圾回收策略为什么要分代,如何分代,以及垃圾回收的触发因素。 为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。 在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如转载 2011-12-19 13:59:25 · 431 阅读 · 0 评论 -
JVM垃圾回收面临的问题
本文来自和你在一起的博客,原标题为《JVM调优总结(四)-垃圾回收面临的问题》。 上面说到的“引用计数”法,通过统计控制生成对象和删除对象时的引用数来判断。垃圾回收程序收集计数为0的对象即可。但是这种方法无法解决循环引用。所以,后来实现的垃圾判断算法中,都是从程序运行的根节点出发,遍历整个对象引用,查找存活的对象。那么在这种方式的实现中,垃圾回收从哪儿开始的呢?即,从哪儿开始查找哪些对象是正在被转载 2011-12-19 13:58:18 · 471 阅读 · 0 评论 -
漫谈JVM的基本垃圾回收算法
本文来自JavaEye和你在一起的博客,原文名称为《JVM调优总结(三)-基本垃圾回收算法》。 之前介绍了JVM的一些基本概念:数据类型、堆与栈、Java对象的大小与引用类型等等。下面介绍JVM的垃圾回收算法。可以从不同的的角度去划分垃圾回收算法: 按照基本回收策略分 引用计数(Reference Counting): 比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引转载 2011-12-19 13:54:25 · 560 阅读 · 0 评论 -
Java进阶-Java中的类装载器和命名空间
类装载器的功能及分类 顾名思义,类装载器是用来把类(class)装载进JVM的。JVM规范定义了两种类型的类装载器:启动类装载器(bootstrap)和用户自定义装载器(user-defined class loader)。 bootstrap是JVM自带的类装载器,用来装载核心类库,如java.lang.*等。如java.lang.Object是由bootstrap装载的。 Java提供了转载 2013-03-06 23:33:25 · 1471 阅读 · 0 评论