08 2017 档案

摘要:1. 双亲委派模型 JVM内置了三个ClassLoader Bootstrap ClassLoader:负责加载%JAVA_HOME%/lib目录中的class(比方说rt.jar里的class),这个ClassLoader是JVM底层实现的,我们无法直接操作 Extension ClassLoad 阅读全文
posted @ 2017-08-15 21:02 qeDVuHG 阅读(276) 评论(0) 推荐(0) 编辑
摘要:Guice是Google开发的一个开源轻量级的依赖注入框架,运行速度快,使用简单。 项目地址:https://github.com/google/guice/ 最新的版本是4.1,本文基于此版本。 0. 什么是依赖注入? 依赖注入(Dependency Injection)是一种思想。 在一般的编程 阅读全文
posted @ 2017-08-09 18:20 qeDVuHG 阅读(1459) 评论(0) 推荐(0) 编辑
摘要:基于版本:Guava 22.0 Wiki:EventBus 0. EventBus简介 提供了发布-订阅模型,可以方便的在EventBus上注册订阅者,发布者可以简单的将事件传递给EventBus,EventBus会自动将事件传递给相关联的订阅者。 支持同步/异步模式。 只能用于线程间通信。 1.  阅读全文
posted @ 2017-08-04 11:52 qeDVuHG 阅读(1264) 评论(0) 推荐(0) 编辑
摘要:基于版本:Guava 22.0 Wiki:New collection types 0. 简介 Guava提供了很多好用的集合工具,比如Multiset和BiMap,本文介绍了这些新集合类型的使用方式与实现原理。 1. Multiset a. 简介 一般的Set会对相同元素去重,而Multiset则 阅读全文
posted @ 2017-08-03 09:54 qeDVuHG 阅读(1084) 评论(2) 推荐(0) 编辑
摘要:基于版本:Guava 22.0 Wiki:Immutable collections 0. ImmutableCollection简介 类似于JDK的Collections.unmodifiableXXX,可以创建不可变集合,是一种防御式编程的体现。 1. 类图 这张类图也不完全,Immutable 阅读全文
posted @ 2017-08-02 15:41 qeDVuHG 阅读(416) 评论(0) 推荐(0) 编辑
摘要:基于版本:Guava 22.0 Wiki:Ordering 0. Ordering简介 Guava的Ordering提供了链式风格的比较器的实现,我们可以用Ordering轻松构建复杂的比较器。 1. 类图 这张类图不完全,实际上Ordering有十几个子类,这些子类共同提供了复杂的功能。 2. 设 阅读全文
posted @ 2017-08-01 21:23 qeDVuHG 阅读(588) 评论(0) 推荐(0) 编辑
摘要:基于版本:Guava 22.0 Wiki:Using and avoiding null 0:Optional简介 null在很多场景下会引发问题,NullPointerException困扰过无数的程序员,Guava用快速失败的思路来显式的解决null问题 ps:JDK1.8也提供了Optiona 阅读全文
posted @ 2017-08-01 13:48 qeDVuHG 阅读(580) 评论(0) 推荐(0) 编辑
摘要:Guava是由Google出品的Java类库,功能强大且易用。 后续我会用多篇博客介绍Guava的使用方法,以及从源码层面分析其实现原理。 分析次序基于Guava的官方Wiki 基于版本:Guava 22.0 (发布时间2017年5月23日) 阅读全文
posted @ 2017-08-01 08:13 qeDVuHG 阅读(350) 评论(0) 推荐(0) 编辑

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