adaptor模式

适配器模式分为类的适配器模式和对象的适配器模式。类的适配器模式是通过继承的方式实现,而对象的适配器模式是通过组合的方式实现。

在java面向对象中,是推荐多用组合,少用继承的,两者的区别还是很多的,例如:组合在运行期确定,继承在编译器确定;组合是松耦合,继承是紧耦合等等。当然具体场景还是得具体分析。

适配器模式的使用场景是,系统需要使用已经存在的类,但是此类并不能完全满足用户或者其他的需求,而且尽量不要去修改此类,此时,此模式就派上用场了,达到了很好的复用效果。

如下代码中:

类Adaptee就是被适配者,代表需要复用的类

接口Target就是目标类,需要实现的功能

类Adaptor就是适配器类

/**
 * 被适配类	 
 */
public class Adaptee {

	public Adaptee(){
	}
	
	public void eat(){
		System.out.println("eat...");
	}
	
}

/**
 * 目标类
 */
public interface Target {
	
	public void eat();
	
	public void sleep();
}


/**
 * 适配器类
 */
public class Adaptor implements Target	{

	private Adaptee adaptee;
	public Adaptor(Adaptee adaptee){
		this.adaptee = adaptee;
	}

	@Override
	public void eat() {
		adaptee.eat();
	}

	@Override
	public void sleep() {
		System.out.println("sleep...");
	}
	
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值