适配器模式:适配器模式使得原本接口不兼容而不能一起工作的类可以一起工作,例子:接口A,实现A1,实现A2,类B,适配器封装类B,且实现接口A并实际调用类B方法
/**
* 适配器模式:
* 关键:
* Target(类/接口/抽象类):定义目标方法
* Adaptee:要适配的对象
* Adapter类:内部封装一个要适配的对象,重写目标方法,方法实则调用要适配对象中的方法
* @author zbl
*
*/
public class AdpaterCustomer {
public static void main(String[] args) {
Targetplayer player1 = new TargetPlayer1();
Targetplayer player2 = new Adapter();
player1.attack();
player1.defense();
player2.attack();
player2.defense();
}
}
//目标类
interface Targetplayer{
public void attack();
public void defense();
}
//对象1
class TargetPlayer1 implements Targetplayer{
@Override
public void attack() {
System.out.println("attack");
}
@Override
public void defense() {
System.out.println("defense");
}
}
//要适配的对象
class TargetPlayer2{
public void 攻击() {
System.out.println("attack");
}
public void 防御() {
System.out.println("defense");
}
}
//适配器
class Adapter implements Targetplayer{
//内部封装一个要适配的对象
private TargetPlayer2 player = new TargetPlayer2();
@Override
public void attack() {
player.攻击();
}
@Override
public void defense() {
player.防御();
}
}