• OpenJDK 源码阅读之 Java 输入输出(I/O) 之 字节流输入

    OpenJDK 源码阅读之 Java 输入输出(I/O) 之 字节流输入

    标签(空格分隔): 源代码阅读 Java 封神之路

    Java 的输入输出总是给人一种很混乱的感觉,要想把这个问题搞清楚,必须对各种与输入输出相关的类之间的关系有所了解。只有你了解了他们之间的关系,知道设计这个类的目的是什么,才能更从容的使用他们。

    我们先对 Java I/O 的总体结构进行一个总结,再通过分析源代码,给出把每个类的关键功能是如何实现的。

    Read More ...
  • OpenJDK 源码阅读之 Java 输入输出(I/O) 之 字节流输出

    OpenJDK 源码阅读之 Java 输入输出(I/O) 之 字节流输出

    标签(空格分隔): 源代码阅读 Java 封神之路

    Read More ...
  • 观察者模式

    观察者模式


    • 定义

    观察者模式定义了对象之间的一对多依赖,当一个对象改变时,所以依赖于它的对象都会得到通知。

    Read More ...
  • 外观模式

    外观模式


    • 定义

    外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统的更容易使用。

    • 解释

    我有一个多功能的盒子,盒子让提供了100个接口,每个都有不同的功能。现在我要把这个盒子给别人用了,我只想让别人用到其中5个接口,或者别人只需要其中5个接口。那么,我可以再做一个盒子,这个盒子套在原来的盒子外面,并且只提供5个接口。这样,用的人会觉得很方便,我也觉得这样很安全。

    我们可能要问,为什么原来的盒子要有100个接口呢?为什么不直接提供5个接口呢?原因可能会很多,可能这个盒子我们没法控制,是别人给我们的。也可能这个盒子要与其它众多盒子配合使用,其它盒子要用到其它的95个接口。

    Read More ...
  • 单例模式

    单例模式


    • 定义

    单例模式确保一个类只有一个实例,并提供一个全局访问点

    • 解释

    从定义可以看出,特点是这个类只有一个实例。那么,为什么要这么做呢?原因在于,有些时候,这个类只有一个实例会节约资源,或者只有一个实例才能保证整个程序运行正确,一致。例如:线程池,缓存,对话框,日志对象等等 。

    Read More ...