OpenJDK源代码阅读
通过阅读OpenJDK源代码,学习数据结构,算法,及库的实现。
on_1y
这个作者很懒,什么都没留下…
展开
-
OpenJDK 源码阅读之 Java 字节流输出类的实现
通过阅读 OpenJDK 源代码,描述了 Java IO 中,字节输出系列6个类的实现方式,并简单介绍了与压缩解压缩相关的几个类。原创 2014-07-12 20:00:27 · 2827 阅读 · 0 评论 -
OpenJDK 源码阅读之 Java 字节流输入类的实现
简要分析了 OpenJDK 的Java IO 中,字节流输入系列的8个类的源代码实现,给出了Java IO的基本设计思路。原创 2014-07-11 20:07:50 · 3282 阅读 · 0 评论 -
OpenJDK 源代码阅读之 TimSort
概要这个类在 Oracle 的官方文档里是查不到的,但是确实在 OpenJDK 的源代码里出现了,Arrays 中的 sort 函数用到了这个用于排序的类。它将归并排序(merge sort) 与插入排序(insertion sort) 结合,并进行了一些优化。对于已经部分排序的数组,时间复杂度远低于 O(n log(n)),最好可达 O(n),对于随机排序的数组,时间复杂度为 O(n原创 2014-06-11 21:32:39 · 10232 阅读 · 7 评论 -
OpenJDK 源代码阅读之 Collections
概要代码路径为: jdk/src/share/classes/java/util/Collections.java类继承关系java.lang.Object java.util.Collections定义public class Collectionsextends Object实现sortpublic stati原创 2014-06-08 19:44:40 · 2282 阅读 · 0 评论 -
OpenJDK 源代码阅读之 BitSet
概要类继承关系java.lang.Object java.util.BitSet定义public class BitSetextends Objectimplements Cloneable, Serializable要点BitSet 类用来支持位操作,给它一个 size ,就会返回一个对象,代表 size 个位。可以完成“与原创 2014-06-07 19:42:51 · 1482 阅读 · 0 评论 -
OpenJDK 源代码阅读之 Arrays
概要类继承关系java.lang.Objectjava.util.Arrays定义public class Arraysextends Object要点此类主要是提供了一些操作数组的方法,比如排序啊,搜索啊。也提供一个工厂,用于将数组当成一个 List。实现quick sortpublic static voi原创 2014-06-05 20:44:58 · 1613 阅读 · 0 评论 -
OpenJDK 源代阅读之 ArrayDeque
概要类继承关系java.lang.Object java.util.AbstractCollectionE> java.util.ArrayDequeE>定义public class ArrayDequeE>extends AbstractCollectionE>implements DequeE>, Cloneable, Seri原创 2014-06-04 19:26:20 · 1521 阅读 · 0 评论 -
OpenJDK 源代码阅读之 LinkedList
概要类继承关系java.lang.Object java.util.AbstractCollection java.util.AbstractList java.util.AbstractSequentialList java.util.LinkedList定义public class L原创 2014-05-30 17:35:31 · 2144 阅读 · 5 评论 -
OpenJDK 源代码阅读之 ArrayList
概要类继承关系java.lang.Object java.util.AbstractCollection java.util.AbstractList java.util.ArrayList定义public class ArrayListE> extends AbstractListE> implemen原创 2014-05-28 17:03:23 · 1978 阅读 · 0 评论 -
OpenJDK 源代码阅读之 String
概要类继承关系java.lang.Object java.lang.String定义public final class Stringextends Objectimplements Serializable, ComparableString>, CharSequence要点一旦创建就不可改变实现storage原创 2014-05-28 17:01:11 · 3201 阅读 · 2 评论 -
OpenJDK 源代码阅读之 HashMap
概要类继承关系java.lang.Object java.util.AbstractMap java.util.HashMap定义public class TreeMapextends AbstractMapimplements NavigableMap, Cloneable, Serializable要点1) 与 Hasht原创 2014-05-27 20:50:05 · 2023 阅读 · 0 评论 -
OpenJDK 源代码阅读之 TreeMap
概要类继承关系java.lang.Object java.util.AbstractMap java.util.HashMap定义public class TreeMap extends AbstractMap implements NavigableMap, Cloneable, java.io.Serializable原创 2014-05-27 20:46:49 · 2585 阅读 · 0 评论 -
开始OpenJDK源代码阅读
开始OpenJDK源代码阅读在阅读了一周的 OpenJDK 源代码后,我才写这篇文章。因为除非你已经开始阅读,否则是不知道自己是不是应该读下去的。所以,不要贸然说自己要干嘛,先做一段时间,觉得感觉还好,再决定做下去。这一周,主要是看 java.util 中和容器相关的几个文件,虽然还没看太多,但是已经有一些收获了。看到了以前学过的数据结构在Java的标准库中是如何被实现的。也明原创 2014-05-27 20:42:03 · 7554 阅读 · 2 评论