java 适配者模式_适配者模式(Adapter)_java实现

//20210119

写在前面:刚期末考试完,考了面向对象,里边儿有23个设计模式,我寻思着考完挨个儿实现一下,本文实现适配者模式

核心思想

构造一个适配器类,该类有原本的功能,也能糅合其他类的功能,最终通过一个类实现多个类的功能(这些类之间原本之间并不能通信,而适配器为多个类提供接口,然后统一输出)

程序源代码如下:

//适配器抽象类

public abstract class CarController {

//此类中有一个移动的方法

public void move(){

System.out.println("玩具汽车正在移动");

}

public abstract void sound();

public abstract void light();

}

//适配者类————发光

public class PoliceLight {

public void alarmLight(){

System.out.println("发出亮光");

}

}

//适配者类————声音

public class PoliceSound {

public void alarmSound(){

System.out.println("发出声音");

}

}

//适配器实现类

public class PoliceCarAdapter extends CarController{

private PoliceLight policeLight;

private PoliceSound policeSound;

public PoliceCarAdapter(){

policeLight = new PoliceLight();

policeSound = new PoliceSound();

}

@Override

public void sound() {

policeSound.alarmSound();

}

@Override

public void light() {

policeLight.alarmLight();

}

}

//测试主类

public class Main {

public static void main(String[] args) {

CarController policeCarAdapter = new PoliceCarAdapter();

policeCarAdapter.move();

policeCarAdapter.light();

policeCarAdapter.sound();

}

}

输出如下:

74f05ca4c822245649ebe91d5625d64a.png

以上

希望对大家有所帮助

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值