结构模式之双向适配器模式


package com.eric.design.adapter;
//双向适配器模式
interface IAa{
public void funA1();
public void funA2();
}
class Aa implements IAa{
public void funA1(){
System.out.println("Aa:funA1");
}
public void funA2(){
System.out.println("Aa:funA2");
}
}
interface IBb{
public void funB1();
public void funB2();
}
class Bb implements IBb{
public void funB1(){
System.out.println("Bb:funB1");
}
public void funB2(){
System.out.println("Bb:funB2");
}
}
class AaBb implements IAa,IBb{//组合Aa和Bb,将AaBb当做Aa和Bb来使用
IAa aa;
IBb bb;
public void setAa(IAa aa){
this.aa = aa;
}
public void setBb(IBb bb){
this.bb = bb;
}
//功能编写
public void funA1(){
aa.funA1();
bb.funB1();
}
public void funB2(){
bb.funB2();
aa.funA2();
}
//重写其他功能,以免功能丢失
public void funA2(){
aa.funA2();
}
public void funB1(){
bb.funB1();
}
}
public class Adapter1 {

public static void main(String[] args) {
// TODO Auto-generated method stub
AaBb aaBb = new AaBb();
aaBb.setAa(new Aa());
aaBb.setBb(new Bb());
aaBb.funA1();
aaBb.funB2();
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值