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虚拟机
:JVM中的Stack和Heap
来自http://www.searchsoa.com.cn/showcontent_32691.htm 在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。 一般,JVM的内存分为两部分:Stack和Heap。 Stack(栈)是JVM的内存指令区。Stack管理很简
victor_jan
·
2010-05-15 00:00
java
jvm
数据结构
虚拟机
深入java虚拟机
读书笔记
平台无关性,安全性和网络移动性java的三大特性。Java体系结构包括四个独立但相关的技术:。Java程序设计语言。Javaclass文件格式。Java应用编程接口(API)。Java虚拟机 类装载器得体系结构 类装载器的体系结构是Java虚拟机在安全性和网络移动性上发挥重要作用的一个方面。类装载器分为“启动装载器”和“自定义装载器启动类装载器可能是c程序的一个部分。它与操作系统相关。启动
vteiawypm
·
2010-05-01 18:00
《
深入Java虚拟机
(2)》摘录
《
深入Java虚拟机
(2)》摘录 作者:臭豆腐[trydofor.com] 日期:2010-04-24 授权:署名-非商业-保持一致 1.0 协议 声明:拷贝
trydofor
·
2010-04-27 16:00
java
jvm
虚拟机
网络协议
网络应用
收藏 一场IBM面试题引发的讨论:创建String对象过程中【内存分配】的终极权威详尽解释
前不久,一个IBM面试题的帖子引发了很多关于创建String对象过程中的内存分配的讨论,既然大家对这个问题这么感兴趣,那么这篇帖子就通过
深入Java虚拟机
(JVM)解读其内部指令流程,来分析创建String
Java-primer
·
2010-04-13 13:00
jvm
数据结构
虚拟机
面试
IBM
深入Java虚拟机
:JVM中的Stack和Heap
在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。 一般,JVM的内存分为两部分:Stack和Heap。Stack(栈)是JVM的内存指令区。Stack管理很简单,push一定长度字节的数据或者指令,Stack指针压栈相应的字节位移;pop一定字节长度数据或者指令,
pengranxiang
·
2010-04-01 10:00
java
jvm
数据结构
虚拟机
推荐几本学习java永远不会过时的好书
第四版》 2:《Effective Java 第二版 中文版/Sun公司核心技术丛书》 3:《
深入
IrenBJ
·
2010-03-31 10:00
java
编程
虚拟机
ssh
sun
从JVM 内部看String 类型的问题
在看完
深入Java虚拟机
这本书后,对JVM处理Java程序的流程有了一个大概的认识,所以总结一下。 下面的分析从我们遇到的一些问题实例进行,我觉得这样是最好理解的。
zhxing
·
2010-03-22 16:00
jvm
C++
c
虚拟机
面试
String对象的理解进行时
深入JAVA虚拟机
》书中是这样描述的:JVM运行时数据区的内存模型由五部分组成: 【1】方法区 【2】堆 【3】JAVA栈 【4】PC寄存器 【5】本地方法栈 对于String s
cooldatabase
·
2010-03-09 09:00
jvm
数据结构
虚拟机
finally的小特性
具体的原理最好是去看《
深入java虚拟机
》,里面对jsr、ret等几个指令做了详细的说明。这里不深入分析,而仅仅是从表现形式上看一下finally的特征。代码: /* * author:
qidaoxp
·
2010-02-08 11:00
虚拟机
finally的小特性
具体的原理最好是去看《
深入java虚拟机
》,里面对jsr、ret等几个指令做了详细的说明。这里不深入分析,而仅仅是从表现形式上看一下finally的特征。代码: /* * author:
qidaoxp
·
2010-02-08 11:00
虚拟机
软引用、弱引用、虚引用 总结
在看‘
深入JAVA虚拟机
’垃圾收集这一章的时候了解有关对象的引用级别,在网上找了些资料总结备忘。
zhxing
·
2010-01-15 13:00
虚拟机
生活
socket
浏览器
网络应用
try catch finally 中使用return ///
具体的原理最好是去看《
深入java虚拟机
》,里面对jsr、ret等几个指令做了详细的说明。这里不深入分析,而仅仅是从表现形式上看一下finally的特征。
net.mail.public
·
2010-01-11 10:00
虚拟机
读书笔记之《
深入JAVA虚拟机
》-----(一)
最近花了点时间看了BillVenners的《
深入JAVA虚拟机
》,这本书深入剖析了JAVA虚拟机规范,我自己则挑了一些原理性的章节来看,等过后有时间还要再好好通读一遍。
potty15
·
2009-12-21 18:00
读书笔记之《
深入JAVA虚拟机
》-----(二)
第七章 类的生命周期1.类的生命周期:装载à连接(验证à准备à解析(可选))à初始化。2.任何一个类的初始化都要求它的超类已经初始化,接口就不需要。3.类在首次主动使用时初始化。4装载过程:通过全限定名获得二进制数据流解析流为方法区的内部数据结构创建一个代表该类型的CLASS类实例。5.类装载器在预先装载时遇到缺失或错误的CLASS文件,它必须等到程序首次主动使用该类时才报告错误。6.验证:在解
potty15
·
2009-12-21 18:00
java继承中的几点注意事项
笔者本打算将这几种现象从基本原理上解释一下,但是想来想去都感觉无从下手,因为需要读者比较了解java虚拟机的内部机制,很多东西比较抽象,所以看到这篇文章的读者记住下面这几种现象就行了,如果想深入理解其本质原理,建议大家读一下《
深入
lubiaopan
·
2009-12-05 21:00
java
虚拟机
String
Class
语言
SD2.0 大会分享(四)
他的经典书《
深入Java虚拟机
》是我学习JVM内部运转机制的第一手资料,内容翔实而准确,例子代码也相当有价值,特此广告一下。Bill本次的演讲为我们带来了《Scala:一种Java平台
kabini
·
2009-11-24 01:00
java
scala
session
JUnit
语言
wrapper
读书笔记之java反编译(1)
此读书笔记根据《
深入java虚拟机
第二版》所得,由于能力问题只能从能看懂的地方(第六章)开始阅读,如有疑问请查阅《
深入java虚拟机
第二版》。
kky2010_110
·
2009-11-07 19:00
Q3行动计划
想看的书:《大话设计模式》,《
深入Java虚拟机
》,《Java并发编程实践》, 《未来是湿的》,《卓有成效的管理者》,《Java网络编程》,《JavaIO
northlion
·
2009-09-29 16:10
行动
q3
《Java并发编程实践》
《大话设计模式》
Q3行动计划
想看的书:《大话设计模式》,《
深入Java虚拟机
》,《Java并发编程实践》, 《未来是湿的》,《卓有成效的管理者》,《Java网络编程》,《JavaIO
northlion
·
2009-09-29 16:10
行动
q3
《大话设计模式》
《Java并发编程实践》
创建String对象过程中【内存分配】的终极权威详尽解释
原文链接 前不久,一个IBM面试题的帖子引发了很多关于创建String对象过程中的内存分配的讨论,既然大家对这个问题这么感兴趣,那么这篇帖子就通过
深入Java虚拟机
(JVM)解读其内部指令流程,来分析创建
tianlihu
·
2009-09-24 22:00
jvm
数据结构
虚拟机
面试
IBM
深入java虚拟机
补充资料
Inside The JVM(2nd edition)实在是有点老了,java5和java6对class file format已经有了不少改动。 java6的class file format资料ClassFile-Java6可以从 这里下载,比起5主要是介绍了stack map table 和type checking的一些信息。目前java6对inside jvm相关内容的改动的资料,只
yueyemaitian
·
2009-09-20 20:00
jvm
html
sun
JVM学习中
publicstaticvoidmain(String[]args) { inti=0; i=i++; System.out.println(i); }}结果:0资料:JVM规范.pdf,
深入
SandayH
·
2009-09-08 23:00
读书笔记之《
深入JAVA虚拟机
》-----(二)
第七章 类的生命周期1.类的生命周期:装载à连接(验证à准备à解析(可选))à初始化。2.任何一个类的初始化都要求它的超类已经初始化,接口就不需要。3.类在首次主动使用时初始化。4装载过程:通过全限定名获得二进制数据流解析流为方法区的内部数据结构创建一个代表该类型的CLASS类实例。5.类装载器在预先装载时遇到缺失或错误的CLASS文件,它必须等到程序首次主动使用该类时才报告错误。6.验证:在解
potty15
·
2009-08-18 16:00
java
数据结构
虚拟机
算法
读书
Class
读书笔记之《
深入JAVA虚拟机
》-----(一)
最近花了点时间看了BillVenners的《
深入JAVA虚拟机
》,这本书深入剖析了JAVA虚拟机规范,我自己则挑了一些原理性的章节来看,等过后有时间还要再好好通读一遍。
potty15
·
2009-08-18 16:00
java
虚拟机
ClassLoader
读书
Class
平台
与
的区别
今天在看
深入Java虚拟机
的class文件结构时,看到了这么一句话, 可能出现在class文件中的两种编译器产生的方法是:实例初始化方法(名为<init>)和类与接口初始化方法(名为<
freesoftman
·
2009-07-28 00:00
java
虚拟机
【Java 虚拟机系列知识:整理一】java虚拟机的生命周期
【Java虚拟机系列知识:整理一】java虚拟机的生命周期(内容整理自《
深入Java虚拟机
》,由于最近看,就把有用的东西整理一下) 要理解Java虚拟机,你首先必须意识到,当你说“Java虚拟机”,可能指的是如下
yinyuan1987
·
2009-06-26 14:00
java
虚拟机
String
System
Class
sun
【Java 虚拟机系列知识:整理一】java虚拟机的生命周期
【Java 虚拟机系列知识:整理一】java虚拟机的生命周期 (内容整理自《
深入Java虚拟机
》,由于最近看,就把有用的东西整理一下) 要理解Java虚拟机,你首先必须意识到,当你说“Java虚拟机
jandroid
·
2009-06-26 14:00
JAVA虚拟机
垃圾收集算法
垃圾收集算法有很多种,有的是单独的算法,有的是多个算法的组合,这里谈的算法来自《
深入Java虚拟机
》一书: 引用计数: 这是一个比较古老的算法,原理和C++中的SmartPointer差不多,堆中的每个对象都有一个引用计数
disorder
·
2009-06-06 20:00
算法
虚拟机
活动
finally的小特性
具体的原理最好是去看《
深入java虚拟机
》,里面对jsr、ret等几个指令做了详细的说明。这里不深入分析,而仅仅是从表现形式上看一下finally的特征。 代码:  
ZangXT
·
2009-05-21 15:00
虚拟机
windows
finally的小特性
具体的原理最好是去看《
深入java虚拟机
》,里面对jsr、ret等几个指令做了详细的说明。这里不深入分析,而仅仅是从表现形式上看一下finally的特征。 代码:  
ZangXT
·
2009-05-21 15:00
windows
虚拟机
jvm常量池、string对象
《
深入JAVA虚拟机
》书中是这样描述的:JVM运行时数据区的内存模型由五部分组成: 【1】方法区【2】堆【3】JAVA栈【4】PC寄存器【5】本地方法栈 对于String s = "haha
yongyuan.jiang
·
2009-05-04 21:00
jvm
数据结构
虚拟机
《
深入Java虚拟机
》·书评
最近在读这本书,没要找到书评的,还好今天找到一篇了 谢谢cantellow 的书评 想为我每一本看过的技术书籍都写一个书评,虽然自不量力,写出来的东西更是没有水准,但是我还是想写,因为这样可以加深我印象。本来这本书读完已经快一星期了,但我还是不忍翻翻,觉得很值得回味。我觉得对于我们Java程序员来说,有些章节是没必要看的,你又不是实现JVM,没有必要深入到每个指令都要熟悉。所以我整理了
oyprunner
·
2009-04-12 10:00
java
数据结构
编程
虚拟机
出版
《
深入Java虚拟机
》·书评
想为我每一本看过的技术书籍都写一个书评,虽然自不量力,写出来的东西更是没有水准,但是我还是想写,因为这样可以加深我印象。本来这本书读完已经快一星期了,但我还是不忍翻翻,觉得很值得回味。我觉得对于我们Java程序员来说,有些章节是没必要看的,你又不是实现JVM,没有必要深入到每个指令都要熟悉。所以我整理了一下,觉得:第1章Java体系结构介绍、第2章平台无关、第3章安全、第5章Java虚拟机、第7章
cantellow
·
2009-04-06 21:00
java
jvm
数据结构
编程
虚拟机
《
深入Java虚拟机
》·书评
想为我每一本看过的技术书籍都写一个书评,虽然自不量力,写出来的东西更是没有水准,但是我还是想写,因为这样可以加深我印象。本来这本书读完已经快一星期了,但我还是不忍翻翻,觉得很值得回味。我觉得对于我们Java程序员来说,有些章节是没必要看的,你又不是实现JVM,没有必要深入到每个指令都要熟悉。所以我整理了一下,觉得:第1章Java体系结构介绍、第2章平台无关、第3章安全、第5章Java虚拟机、第7章
cantellow
·
2009-04-06 21:00
java
jvm
数据结构
编程
虚拟机
初始化及类的加载
那些
深入Java虚拟机
的原理暂且不说,但至少有些流程你还是有必要搞清楚的。
cantellow
·
2009-03-25 19:00
虚拟机
初始化及类的加载
那些
深入Java虚拟机
的原理暂且不说,但至少有些流程你还是有必要搞清楚的。
cantellow
·
2009-03-25 19:00
虚拟机
深入java虚拟机
第9章, 垃圾收集(4)
深入java虚拟机
第9章, 垃圾收集(4) finalize方法 终结方法是垃圾收集器在释放对象前必须运行。
frenchmay
·
2009-03-25 02:00
java
虚拟机
算法
面试
招聘
java体系结构介绍
本系列文章系《
深入java虚拟机
》的读书笔记。希望高手能帮助小弟进步。 java技术的核心就是java虚拟机。所有的java程序都运行其之上。
lingqi1818
·
2009-03-07 21:00
java
虚拟机
jni
读书
java虚拟机
PS:貌似现在学这种东西的人没多少了,都在研究SSH,《
深入Java虚拟机
》是一本好书,但是文字实在太多,所以提取了精简的部分 在Java虚拟机规范中,一个虚拟机实例的行为是分别按照子系统、内存区、数据类型以及指令几个术语来描述的
碧海山城
·
2009-02-14 13:00
java
虚拟机
浏览器
Google
ssh
深入java虚拟机
第20章, 线程同步-对象锁
java虚拟机的一些运行时数据区会被所有线程共享,其他的数据是各个线程私有的。 因为堆和方法区是被所有线程共享的,java程序需要为两种多线程访问数据进行协调。 1)保存在堆中的实例变量 2)保存在方法区中的类变量 程序不需要协调保存在java栈中的局部变量,因为java栈中的数据是属于拥有该栈的线程私有的。 在java虚拟机中,每个对象和类在逻辑上都是和一个监视器相关联的。对于对象来说
frenchmay
·
2009-01-05 22:00
java
多线程
编程
虚拟机
深入java虚拟机
第20章, 线程同步-同步和互斥
监视器 java监视器支持两种线程:互斥和协作。 java虚拟机通过对象锁来实现互斥,允许多个线程在同一个共享数据上独 立而不干扰地工作。 协作则通过object类的wait方法和notify方法来实现,允许多个线程为了同一个目标而共同工作。 我们将监视器比作一个建筑物,里面有很多房间,房间里面有一些数据,并且同一个时间只能被一个线程占据。一个线程进入房间到离开为止,独占其中全部的数据。
frenchmay
·
2009-01-05 21:00
java
虚拟机
工作
深入java虚拟机
第9章, 垃圾收集(3)火车算法
大范围的垃圾收集会占用大量的资源和时间,可能会导致暂停和无法满足实时系统的要求。因此,使用渐进式的收集算法。火车算法是为了在成熟对象空间提供限度时间的渐进收集。 车厢,火车和火车站火车算法把成熟对象空间划分为固定长度的内存块,算法每次在一个块中单独执行。每个块属于一个集合。块被叫车厢,集合被叫做火车,成熟对象空间是火车站。火车被排序,块被附加到火车的尾部。 这种方式表示出了成熟对象空间内所有块的总
frenchmay
·
2009-01-04 21:00
java
数据结构
虚拟机
算法
深入java虚拟机
第9章, 垃圾收集(2)
垃圾收集 引用计数 堆中每一个对象都有一个引用计数。当一个对象被创建了,并且指向该对象的引用被分配给一个变量,这个对象的引用计数被置为1.当任何其他变量被赋值为对这个对象的引用时,计数加1。当一个对象的引用超过了生存期或者被设置一个新的值时,对象的引用计数减1.任何引用数为0的对象可以被当作垃圾收集。当一个对象被垃圾收集的时候,它引用的任何对象计数值减1.在这种方法中,一个对象被垃圾收集后可能
frenchmay
·
2009-01-04 21:00
java
虚拟机
算法
工作
活动
深入java虚拟机
第9章, 垃圾收集(1)
java虚拟机的堆里存放着正在运行的java程序所创建的所有对象。当一个对象不再被程序引用时,它所使用的堆空间可以被回收,以便后续的新对象所使用。垃圾收集器必须能够断定哪些对象是不再被引用的,并且能够把它们所占据的堆空间释放出来。在释放不再被引用的对象的过程中,垃圾收集器运行将要被释放的对象的终结方法(finalizer)。 除了释放不再被引用的对象,垃圾收集器还要处理堆碎片。在一个虚拟内存系统
frenchmay
·
2009-01-03 23:00
java
jvm
虚拟机
算法
活动
深入java虚拟机
第5章, class文件常量池中字符串类urf8格的存储格式
java虚拟机在class文件中对应类型的常量池中使用了一种类似utf8格式的变体来存储一个常量字符串。 (这里请不要和java se的string api搞混淆,这里谈的是class文件的文件格式问题,我这里只是感觉这种方式比较节省空间,故拿出来请大家看一下。) utf-8编码模式允许字符串中的所有unicode字符以2个字节的形式表示,而ascii码(空字符
frenchmay
·
2009-01-03 21:00
java
jvm
C++
c
虚拟机
深入java虚拟机
第5章, 栈
java栈 每当启动一个新线程的时候,java虚拟机都会为它分配一个java栈。java以栈帧为单位保存线程的运行状态。虚拟机只会对java栈执行两种操作:以栈帧为单位的压栈或者出栈。 java方法可以通过两种方式完成,一种通过return返回,成为正常返回;一种通过抛出异常而异常终止 。虚拟机都会将当前栈弹出java栈然后释放掉,这样上一个方法的栈帧就是当前栈帧了。 &nb
frenchmay
·
2009-01-02 18:00
java
多线程
虚拟机
工作
深入java虚拟机
第5章, 堆
堆 java程序在运行时所创建的所有类实例或数组都存放在同一个堆中。而每个java虚拟机实例中只存在一个堆空间,因此所有线程都将共享这个堆,又由于每个java程序独占一个java虚拟机实例,因此都有它自己的堆空间。 因此要考虑多线程访问对象(堆数据)的同步的问题了。 java虚拟机有一条在堆中分配新对象的指令,但是没有释放内存的指令。java虚拟机的垃圾回收机制负责回收没有被使用的内存。
frenchmay
·
2009-01-02 00:00
java
多线程
数据结构
虚拟机
工作
深入java虚拟机
第5章, jvm
java虚拟机实例的生命周期: java虚拟机的职责是负责运行一个java程序。 当启动一个java虚拟机时,一个虚拟机实例便诞生了。 当该程序关闭退出时,这个虚拟机实例也随之退出。 如果一台主机上同时运行3个java程序,就会产生3个java虚拟机实例。 java虚拟机通过调用某个初始类的main方法来运行一个java程序。 public class HelloWorld { p
frenchmay
·
2009-01-01 22:00
java
jvm
虚拟机
深入java虚拟机
1-4章, all in sandbox(2)
java虚拟机内置的安全特性 java虚拟机在执行字节码时还进行其他一些内置的安全机制的操作。 1.类型安全的引用转换 2.结构化的内存访问(无指针算法) 3.自动化垃圾收集(不必显式地释放被分配的内存) 4.数组边界检查 5.空引用检查 java程序只能使用类型安全,结构化的方法去访问内存 这样可以避免黑客知道一个类装载器在内存中的位置,赋予一个
frenchmay
·
2009-01-01 11:00
java
数据结构
工作
虚拟机
算法
深入java虚拟机
1-4章, all in sandbox(1)
如果你尚未阅读
深入java虚拟机
,推荐你先阅读深入理解计算机系统。如果你已经阅读过深入理解计算机系统,推荐你阅读
深入java虚拟机
。如果这两本书你都阅读过或者都在阅读,我就不知道说什么好了。
frenchmay
·
2008-12-31 23:00
java
jvm
多线程
数据结构
虚拟机
上一页
8
9
10
11
12
13
14
15
下一页
按字母分类:
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
其他