12 2018 档案

摘要:代码版本 JDK每一版本都在改进。本文讨论的HashMap和HashTable基于JDK 1.7.0_67。源码见这里 1. 时间 HashTable产生于JDK 1.1,而HashMap产生于JDK 1.2。从时间的维度上来看,HashMap要比HashTable出现得晚一些。 2. 作者 以下是 阅读全文
posted @ 2018-12-20 15:58 HappyDeveloper 阅读(258) 评论(0) 推荐(0) 编辑
摘要:Java7 HashMap HashMap 是最简单的,一来我们非常熟悉,二来就是它不支持并发操作,所以源码也非常简单。 首先,我们用下面这张图来介绍 HashMap 的结构。 这个仅仅是示意图,因为没有考虑到数组要扩容的情况,具体的后面再说。 大方向上,HashMap 里面是一个数组,然后数组中每 阅读全文
posted @ 2018-12-20 15:50 HappyDeveloper 阅读(181) 评论(0) 推荐(0) 编辑
摘要:简介 ConcurrentHashMap 是 util.concurrent 包的重要成员。本文将结合 Java 内存模型,分析 JDK 源代码,探索 ConcurrentHashMap 高并发的具体实现机制。 由于 ConcurrentHashMap 的源代码实现依赖于 Java 内存模型,所以阅 阅读全文
posted @ 2018-12-19 11:50 HappyDeveloper 阅读(416) 评论(0) 推荐(0) 编辑
摘要:前言 Java里面的I/O这一部分看过很多遍,每次看完之后特别混乱,又是输入流,又是输出流,又是字符流,又是字节流,还有什么过滤流,缓冲流。每次看得我如入云里雾里,直到后面看了设计模式这一块,才算真正的对Java I/O这一块有了整体的了解,理解起Java流也就容易许多。这篇博客先介绍装饰者模式,然 阅读全文
posted @ 2018-12-12 21:17 HappyDeveloper 阅读(434) 评论(0) 推荐(0) 编辑
摘要:一、字节流 1. 输出流 Java的基本输出流类是java.io.OutputStream; 此类常用的写入数据的基本方法如下: 常见子类(针对流介质): FileOutputStream 针对文件 TelnetOutputStream 针对网络连接 ByteArrayOutputStream 针对 阅读全文
posted @ 2018-12-12 17:39 HappyDeveloper 阅读(237) 评论(0) 推荐(0) 编辑
摘要:一、不可变类简介 不可变类:所谓的不可变类是指这个类的实例一旦创建完成后,就不能改变其成员变量值。如JDK内部自带的很多不可变类:Interger、Long和String等。可变类:相对于不可变类,可变类创建实例后可以改变其成员变量值,开发中创建的大部分类都属于可变类。 二、不可变类的优点 说完可变 阅读全文
posted @ 2018-12-10 12:23 HappyDeveloper 阅读(733) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示