java23种设计模式四(连载)

四、桥接模式

    桥接模式关注抽象的设计,顾名思义,你可以创建一个桥,然后把这些抽象方法移到接口中。这样,抽象就将依赖于接口的实现。

       桥接模式的意图是将抽象与抽象方法的实现相互分离来实现解耦,以便二者可以相互独立的变化。

       桥接模式的好处:优先使用对象的合成/聚合将有助于你保持每个类被封装,并被集中在单个任务上,这样类和类继承层次会保持较小规模,并且不大可能增长为不可控制的庞然大物。

下面是示例代码:

/**
 * 手机软件
 * @author ripper
 *
 */
public abstract class HandsetSoft {

	public abstract void run();
}

/**
 * 手机游戏
 * @author ripper
 *
 */
public class HandsetGame extends HandsetSoft {

	@Override
	public void run() {
		System.out.println("运行手机游戏");
	}

}

public class HandsetAddressList extends HandsetSoft {

	@Override
	public void run() {
		System.out.println("运行手机通讯录!");
	}

}

/**
 * 手机品牌
 * @author ripper
 *
 */
public abstract class HandsetBrand {

	public abstract void run();
	
	protected HandsetSoft soft;
	
	public HandsetBrand(HandsetSoft soft){
		this.soft = soft;
	}
	
	public HandsetBrand() {
	}

	public void setSoft(HandsetSoft soft) {
		this.soft = soft;
	}
	
	public HandsetSoft getSoft() {
		return soft;
	}
}

/**
 * 手机品牌M
 * @author ripper
 *
 */
public class HandsetBrandM extends HandsetBrand {

	public HandsetBrandM(){
		System.out.println("M型手机");
	}
	
	@Override
	public void run() {
		soft.run();
	}

}

/**
 * 手机品牌N
 * @author ripper
 *
 */
public class HandsetBrandN extends HandsetBrand {

	public HandsetBrandN(){
		System.out.println("N型手机");
	}
	
	@Override
	public void run() {
		soft.run();
	}

}


转载于:https://my.oschina.net/u/2323379/blog/880725

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值