首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
深入理解Java虚拟机读书笔记1----Java内存区域与HotSpot虚拟机对象
】的更多相关文章
深入理解Java虚拟机读书笔记1----Java内存区域与HotSpot虚拟机对象
一 Java内存区域与HotSpot虚拟机对象 1 Java技术体系.JDK.JRE? Java技术体系包括: · Java程序设计语言: · 各种硬件平台上的Java虚拟机: · Class文件格式: · Java API类库: · 来自商业机构或开源社区的第三方Java类库. JDK,即Java开发工具包,包括Java程序设计语言.Java虚拟机.Java API类库,是用于支持Java程序开发的…
《Effective Java》读书笔记(一)之创建和销毁对象
最近在研读<Effective Java>一书,读书不做点笔记,感觉很容易就忘掉,于是用本篇博客来记录阅读此书的笔记. 郑重声明: 由于是<Effective Java>一书的笔记,所以大部分内容基本来自此书,还有一小部分是自己的理解. 第1条 考虑用静态工厂方法代替构造器 一般来说,获取一个类的实例,大家想到的都是通过该类的公有构造函数来new 一个实例,而第一条推荐我们可以考虑使用静态工厂方法来创建实例,这里的工厂方法并不直接对应于设计模式中的工厂方法模式. 静态工厂方法与构造…
深入理解Java虚拟机 -- 读书笔记(1):JVM运行时数据区域
深入理解Java虚拟机 -- 读书笔记:JVM运行时数据区域 本文转载:http://blog.csdn.net/jubincn/article/details/8607790 本系列为<深入理解Java虚拟机 >(周志明著)读书笔记. Java程序员一般都知道JVM中存在栈和堆的,并简单了解对象是在堆上分配的,这点从C/C++转过Java的程序员很容易想到.但Java由于其自身的特性,还有一些其他的内存区域,如下图所示: 程序计数器 程序计数器占用的内存空间不大,里面记录了各线程当前字节码的…
《深入理解 Java 虚拟机》读书笔记:Java 内存区域与内存溢出异常
前言 最近开始看这本书,记得前段时间拿起这本书的时候,心情是相当沉重的!当时的剧本是这样的-- 内景.家里 - 下午 我(画外):唉,有点无聊啊!(偶然撇过书架)这么多书得看到什么时候啊,要不要拿一本翻翻呢?但是在家里好像有点看不下去啊,是太安逸了吗?最近那本<图解 HTTP>也还没看完,感觉暂时有点不想看了.(走到书架前)还是挑几本优先级比较高的带到███下班的时候看吧.(沉思)嗯,这本带过去~ 当我拿起<深入理解 Java 虚拟机>这本书的那一刻,心里咯噔一下--唉,PM10…
深入理解Java虚拟机之读书笔记一 自动内存管理机制
一.运行时数据区域 1.程序计数器是线程的私有空间,每个线程都有.针对线程执行的是Java代码还是Native代码有两种取值,Java代码时:虚拟机字节码指令的地址:Native代码时:计数值为Undefined.不可能出现OutOfMemeoryError情况. 2.Java虚拟机栈是线程的私有空间,每个线程都有.栈中局部变量表的部分是在编译期间完成分配的,每个局部变量空间的大小为32为长度.栈的深度太长,抛出StackOverflowError异常.栈可扩展时,如果内存不够,会抛出OutOf…
深入理解Java虚拟机——读书笔记
首先 强烈推荐周志明老师的这本书,真的可以说是(起码中文出版界)新手了解Java虚拟机必须人手一本的教科书!!! 第二部分自动内存管理机制 由于Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都只会执行一条线程中的指令.因此,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间计数器互不影响,独立存储,我们称这类内存区域为“线程私有”的内存. 与程序计数器一样,…
《深入java虚拟机》读书笔记之Java内存区域
前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,主要是方便之后进行复习. 运行时数据区域 Java虚拟机在执行过程中会将其管理的内存划分为多个不同的数据区域.其中一些区域随着虚拟机启动而创建,一些区域生命周期则依赖用户线程的启动和结束. 下面是JDK1.7 程序计数器 是一块较小的内存空间,用于记录当前线程所执行的字节码的行号,在执行过程中通过改变计数器的值来选择下一条被执行的指令.分支.循环.异常处理等都通…
Java并发读书笔记:线程安全与互斥同步
目录 导致线程不安全的原因 什么是线程安全 不可变 绝对线程安全 相对线程安全 线程兼容 线程对立 互斥同步实现线程安全 synchronized内置锁 锁即对象 是否要释放锁 实现原理 啥是重进入? ReentrantLock(重入锁) API层面的互斥锁 等待可中断 公平锁 锁绑定 本篇参考许多著名的书籍,形成读书笔记,便于加深记忆. 前文传送门:Java并发读书笔记:JMM与重排序 导致线程不安全的原因 当一个变量被多个线程读取,且至少被一个线程写入时,如果读写操作不遵循happens-b…
java effective 读书笔记
java effective 读书笔记 []创建和销毁对象 静态工厂方法 就是“封装了底层 暴露出一个访问接口 ” 门面模式 多参数时 用构建器,就是用个内部类 再让内部类提供构造好的对象 枚举 singleton 不知道怎么操作,觉得意义不大 单例模式 私有化构造器不能实例化,也不可被子类继承 能用原生类的就尽量不用对象 []对于所有对象都通用的方法 reflexivity 自反性 symmetry 对称性 []类成员 降低可访问性 尽量把公有域 变成私有域,并提供 访问和修改的 get se…
读书笔记-浅析Java运行时数据区
作为一个 Java 为主语言的程序员,我偶尔也需要 用 C/C++ 写程序,在使用时让我很烦恼的一件事情就是需要对 new 出来的对象进行 delete/free 操作,我老是担心忘了这件事情,从而导致内存泄漏或溢出.所以,使用Java让我感觉很爽.但理解 Java 的内存区域是很有必要的.对于 Java 的内存,我们大多数的时候都只是在说堆内存(Heap)和栈内存(Stack),但 Java 内存区域的划分实际上更细,了解它可以让我们进一步的去了解这门语言. 运行时数据区 以下为 Java 运…