0
点赞
收藏
分享

微信扫一扫

设计模式——适配器

雨鸣静声 2022-01-17 阅读 72

GitHub - bailuoxi66/designMode

参考:【狂神说Java】通俗易懂的23种设计模式教学(停更)_哔哩哔哩_bilibili

1. 适配器【可以更好的建模】

 

首先:有网线

//要被适配的类  网线
public class Adaptee {

public void request(){
System.out.println("连接网线上网");
}
}

  因为要面向接口编程,所以需要写一个转接头的接口

//接口转化器,面向接口编程
public interface NetToUsb {

//处理请求,将网线插入到usb上呢
public void handleRequest();
}

转化器可以接任意种类的网线,所以这里不能直接继承extends Adaptee. 

//真正的适配器,需要连接usb,连接网线
public class Adapter implements NetToUsb{

//因为适配器可以连接任何的网线
private Adaptee adaptee;

public Adapter(Adaptee adaptee){
this.adaptee = adaptee;
}

@Override
public void handleRequest() {
adaptee.request(); //可以上网了
}
}

电脑上网

//客户端类: 电脑【超薄】   想上网,但是插不上网线
public class Computer {
public void net(NetToUsb netToUsb){
//上网的具体实现,找一个转接头【将头脑中想要实现的东西,转化成代码实现的东西,会非常爽】
netToUsb.handleRequest();
}

public static void main(String[] args) {
//需要电脑、网线、适配器
Computer computer = new Computer(); //电脑
Adaptee adaptee = new Adaptee(); //网线
Adapter adapter = new Adapter(adaptee); //适配器

computer.net(adapter);
}
}

 

 

举报

相关推荐

0 条评论