Posts
xzoO.Org
Cancel

Java IO的SDK中用了大量的adaptor模式来解决不同格式不同方式的文件的读写。它能为客户掩盖掉底层实现的细节。在实际的开发中,它应用于这种情形: 现有的SDK/API只是一部分满足自己的需求 所以,不满足的部分只能通过适配的方法来弥补。 比如我有一个220V的电源插座,现在要为不同的设备生产不同的插头,比如手机和笔记本。220V是属于需要被改造适配的adaptee,5...

用观察者模式处理Java里的图形编程事件响应,非常好理解。多个观察者通过注册事件监听器,监听被观察者,一旦被观察者有状态改变,会发送通知给所有这些观察者去响应。举个最简单的例子,多个病人去看病,首先挂号,然后等叫号。病人就是观察者,医生就是被观察者。医生一旦发出叫号信息,所有病人会检查该叫号判断是不是自己要去看病。 我现在要设计一个用户响应的程序,需要处理鼠标的输入事件。鼠标有单击、双击、...

一般性地,用数组来保存同类型的对象,然后用for循环遍历这个数组就能取出所有的对象,这过程非常简单直接,很好用。 但是如果数组不适应了当前应用,开发人员决定用类似Vector或者ArrayList来保存这组对象,循环遍历就要重新改写。 迭代模式很好地解决了这个问题,循环遍历时,我不用担心对象组在内部是具体怎么保存的,到底是保存为数组还是保存为集合,完全不用操心。我只要知道统一的迭代方法就...