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

简单地说,适配器模式就是 将一个类的接口,转换成客户需要的口味。
[color=green]一个接口--->另一个接口-----以符合客户。[/color]

适配器模式的类图(见底):
[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(){
//为实现
}
}


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


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值