Java源码分析:深入探讨Iterator模式作者:兄弟连java.util包中包含了一系列重要的集合类。本文将从分析源码入手,深入研究一个集合类的内部结构,以及遍历集合的迭代模式的源码实现内幕。下面我们先简单讨论一个根接口Collection,然后分析一个抽象类AbstractList和它的对应It..
分类:
编程语言 时间:
2016-10-31 22:56:53
阅读次数:
365
按这里的教程: http://www.imooc.com/learn/391 试验时,发现在wordcount的最后一步一直提示如下错误: 猜测是包名导致的,但在cli中加上包名后还是不行,最后通过删除WordCount.java源码中的: 解决了问题。 初次接触Hadoop,根本原因还没找到。 ...
分类:
其他好文 时间:
2016-10-28 20:39:27
阅读次数:
359
准备花点时间看看 java.util.concurrent这个包的源代码,来提高自己对Java的认识,努力~~~ 参阅了@梧留柒的博客!边看源码,边通过前辈的博客学习! 包下的代码结构分类: 1.java.util.concurrent.atomic,正如它的英文意思一样,是一个线程安全、原子操作相 ...
分类:
编程语言 时间:
2016-10-28 15:37:12
阅读次数:
203
《Java源码分析》:Java NIO 之 Buffer在上篇博文中,我们介绍了Java NIO 中Channel 和Buffer的基本使用方法,这篇博文将从源码的角度来看下Buffer的内部实现。在...
分类:
编程语言 时间:
2016-10-10 14:26:44
阅读次数:
300
之前在学习java源码时,发现了assert这个不常用的关键字。下面直接来介绍下这个关键字的使用。 assert是什么? 它是jdk1.4之后新增加的关键字,没了。 assert的作用是什么? assert在很多编程语言中的用途都是断言。 但是什么是断言呢? 只是简单的判断一下布尔表达式是否为真么? ...
分类:
编程语言 时间:
2016-10-09 07:18:36
阅读次数:
263
1,JVM也是一个软件,不同的平台有不同的版本。我们编写的Java源码,编译后会生成一种 .class 文件,称为字节码文件。Java虚拟机就是负责将字节码文件翻译成特定平台下的机器码然后运行。也就是说,只要在不同平台上安装对应的JVM,就可以运行字节码文件,运行我们编写的Java程序。 而这个过程 ...
分类:
其他好文 时间:
2016-10-01 19:52:11
阅读次数:
198
一.概述: LinkedHashMap是HashMap的子类,它的基本操作与HashMap相同,与之不同的是,它可以实现按照插入顺序进行排序.也可以通过在构造函数中指定参数,按照访问顺序排序(LinkedHashSet无法按照访问顺序进行排序). 二.LinkedHashMap是如何实现按照插入顺序 ...
分类:
编程语言 时间:
2016-09-30 21:18:05
阅读次数:
207
一.概述 HashSet是建立在HashMap的基础上的,其内部存在指向一个HashMap对象的引用,操作HashSet实际上就是操作HashMap,而HashMap中所有键的值都指向一个叫做Dummy value的值.这是一个Object对象.是在HashSet进行显示初始化的时候初始化出来的,而 ...
分类:
编程语言 时间:
2016-09-30 21:15:01
阅读次数:
166
一.LinkedList的内部数据结构 LinkedList底层是一个链表的数据结构,采用的是双向链表,基本的Node数据结构代码如下: 二.LinkedList的结点的常用操作 在LinkedList实现List接口的一系列方法的时候,底层是通过一系列结点操作,完成对于LinkedList的方法的 ...
分类:
编程语言 时间:
2016-09-25 22:14:15
阅读次数:
306
一.ArrayList的构造器和构造方法 在ArrayList中定义了两个空数组,分别对应当指定默认构造方法时候,指向的数组已经给定容量,但是容量等于0的时候,指向的数组.此外在构造函数中传入Collection对象的时候,直接调用对象的toArray方法,并且将容器内部的引用指向得到的数组.源代码 ...
分类:
编程语言 时间:
2016-09-25 15:43:57
阅读次数:
196