自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 Java中为什么要使用泛型?

         泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。可以把类型参数看作是使用参数化类型时指定的类型的一个占位符,就像方法的形式参数是运行时传递的值的占位符一样。       &...

2017-08-23 14:56:36 1581

转载 JVM线程安全与锁优化

线程安全与锁优化 Java中线程安全 对共享数据的操作 1.        不可变: 不可变的对象一定是线程安全的。如String类。 2.        绝对线程安全 3.        相对线程安全 4.        线程兼容 5.        线程对立 线程安全的实现方法 1.        互斥同步(阻塞式同步) 1)        同步指的是:多个线程并发访问共享数据时,保证共享数据在

2017-08-23 11:40:40 261

转载 Java内存模型与线程的实现

硬件的效率与一致性 基于高速缓存的存储交互很好的解决了处理器和内存的速度矛盾,但是也为计算机系统带来了更高的复杂度,因为引入了一个新问题:缓存一致性。在多处理器系统中,每个处理器都有自己的高速缓存,而他们又共享同一主内存(Main Memory),如上图所示。当多个处理器的运算任务都涉及到主内存中的同一块区域,那么将高速缓存中的数据同步回主内存时,到底以谁的缓存数据为准呢?为了保证数据的一致性,需要

2017-08-23 11:38:07 156

原创 JVM类文件结构

本文是基于周志明的《深入理解Java虚拟机》 Class类文件结构   Class文件     1).是一组以8字节为基础单位的二进制流,     2).各个数据项目严格按照顺序紧凑排列在class文件中,     3).中间没有任何分隔符,这使得class文件中存储的内容几乎是全部程序运行...

2017-08-23 11:35:18 170

转载 JVM垃圾回收算法与内存管理策略

3.2对象已死吗?3.2.1 引用计数法给对象添加一个引用计数器,每当有一个地方引用它的地方,计数器值+1;当引用失效,计数器值就减1;任何时候计数器为0,对象就不可能再被引用了。 它很难解决对象之间相互循环引用的问题。 3.2.2 可达性分析算法这个算法的基本思路就是通过一系列的称为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链(Reference C

2017-08-23 11:31:16 197

转载 [深入理解JVM] Java对象的创建、内存布局、访问定位

对象的创建 一个简单的创建对象语句Clazz instance = new Clazz();包含的主要过程包括了类加载检查、对象分配内存、并发处理、内存空间初始化、对象设置、执行ini方法等。 主要流程如下: 1. 类加载检查 JVM遇到一条new指令时,首先检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那

2017-08-18 16:37:07 190

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除