转载关于java内存模型的系列文章,写的非常好。 深入理解java内存模型(一)——基础 深入理解java内存模型(二)——重排序 深入理解java内存模型(三)——顺序一致性 深入理解java内存模型(四)——volatile 深入理解java内存模型(五)——锁 深入理解java内存模型(六)—...
分类:
编程语言 时间:
2015-08-20 12:42:07
阅读次数:
127
第三部分 虚拟机执行子系统第6章 类文件结构//实现语言无关性的基础仍然是虚拟机和字节码存储格式,使用Java编译器可以把Java代码编译为存储字节码的Class文件,使用JRuby等其他语言的编译器一样可以把程序代码编译成Class文件,虚拟机并不关心Class的来源是什么语言,只要它符合Clas...
分类:
编程语言 时间:
2015-08-20 12:22:08
阅读次数:
143
官方手册: http://docs.oracle.com/javase/7/docs/? ? ?----> http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/java.html? ?java命令的各种选项的说明 参考书籍: 《深入理解Java虚拟机:J...
分类:
其他好文 时间:
2015-08-17 17:38:17
阅读次数:
1101
动态代理其实就是java.lang.reflect.Proxy类动态的根据您指定的所有接口生成一个class byte,该class会继承Proxy类,并实现所有你指定的接口(您在参数中传入的接口数组);然后再利用您指定的classloader将 clas...
分类:
编程语言 时间:
2015-08-14 15:50:57
阅读次数:
176
最近在读《深入理解Java虚拟机》,对Java对象的内存布局有了进一步的认识,于是脑子里自然而然就有一个很普通的问题,就是一个Java对象到底占用多大内存? 在网上搜到了一篇博客讲的非常好:http://yueyemaitian...
分类:
编程语言 时间:
2015-08-13 16:01:43
阅读次数:
146
该文章转自网络,原文不可考,给出转载文章链接:http://blog.csdn.net/rokii/article/details/4046098看项目代码看到一段写的很美的代理机制,整理一下: 动态代理其实就是java.lang.reflect.Proxy类动态的根据您指定的所有接口生成一个cl....
分类:
编程语言 时间:
2015-08-11 15:48:18
阅读次数:
221
深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。....
分类:
编程语言 时间:
2015-08-11 14:09:44
阅读次数:
101
阅读《深入理解Java虚拟机》艺术第三章“垃圾收集器与内存分配策略”,对本章中重要概念进行抄写,以便后续记忆及理解。 ????在堆里存放着Java世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前...
分类:
其他好文 时间:
2015-08-11 08:39:35
阅读次数:
166
学习多线程之前,我觉得很有必要去学习下
[笔记][思维导图]读深入理解JAVA内存模型整理的思维导图基础知识
锁除了让临界区互斥执行外,
还可以让释放锁的线程向获取同一个锁的线程发送消息
当线程获取锁时,JMM会把该线程对应的本地内存置为无效。
从而使得监视器保护的临界区代码必须要从主内存中去读取共享变量。
当线程释放锁时,JMM会把该线程对应的本地内存中的共享变量刷新到主内存中。
在同一个类...
分类:
编程语言 时间:
2015-08-08 13:36:20
阅读次数:
199