读书人

设计形式学习-适配器模式

发布时间: 2012-10-30 16:13:36 作者: rapoo

设计模式学习-----适配器模式
简单地说,适配器模式就是 将一个类的接口,转换成客户需要的口味。
一个接口--->另一个接口-----以符合客户。

适配器模式的类图(见底):
[img]C:\Documents and Settings\rudy\桌面\Main.jpg[/img]

这里描述由 枚举适配到迭代器。

当然,这里枚举这个类就是adaptee被适配者,而目标接口为iterator,需要设计一个适配器,讲现有的枚举类转变为我们现在所使用的Iterator接口。

其类图如下
下面为适配器代码

   public class EmToIterator implement Iterator{      private Enumeration e ; //has a Enumeration object      public EmTorIterator(){          this.e = new Enumeration() ;      }            public boolean hasnext(){         e.hasMoreElement() ;      }      public Object next(){         e.nextElement() ;      }      public void remove(){         //为实现      }}


总结下适配器的实现:1.实现要适配后的目标接口;
2.需要有个被适配者的引用(组合) ,以通过调用被适配者的接口 对外接口来实现目标接口。


画类图时碰到的一个问题:用starUM画类图时,实现接口的线应该为有箭头的虚线的,可是实际上现实出来的却是一条实线,所有在这里就用了继承的 带箭头的实线。大家有没有碰到类似的问题呢?待解决...

读书人网 >软件开发

热点推荐