享元模式
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。

package com.xgp.company.结构性模式.第一种_适配器模式;
/**
* 要被适配的类(网线)
*/
public class Adaptee {
public void request() {
System.out.println("连接网线上网!");
}
}
package com.xgp.company.结构性模式.第一种_适配器模式;
/**
* 客户端类:想上网,插不上网线
*/
public class Computer {
//我们的电脑需要连接上转接器才能上网
public void net(NetToUsb adapter) {
//上网的具体实现,找一个转接头
adapter.handleRequest();
}
public static void main(String[] args) {
//电脑,适配器,网线
Computer computer = new Computer();
Adapter adapter = new Adapter();
// Adaptee adaptee = new Adaptee();
computer.net(adapter);
}
}
package com.xgp.company.结构性模式.第一种_适配器模式;
/**
* 接口转换器的抽像实现
*/
public interface NetToUsb {
//作用:处理请求(网 => usb)
public void handleRequest();
}
package com.xgp.company.结构性模式.第一种_适配器模式;
/**
* 1、继承方式(类适配器)
* 2、组合(对象适配器:常用)
*/
/**
* 适配器:需要连接usb和网线
*/
public class Adapter extends Adaptee implements NetToUsb {
@Override
public void handleRequest() {
//可以上网了
super.request();
}
}
连接网线上网!
package com.xgp.company.结构性模式.第二种_适配器模式;
/**
* 1、继承方式(类适配器)
* 2、组合(对象适配器:常用)
*/
/**
* 适配器:需要连接usb和网线
*/
public class Adapter implements NetToUsb {
private Adaptee adaptee;
public Adapter(Adaptee adaptee) {
this.adaptee = adaptee;
}
@Override
public void handleRequest() {
//可以上网了
adaptee.request();
}
}
package com.xgp.company.结构性模式.第二种_适配器模式;
/**
* 客户端类:想上网,插不上网线
*/
public class Computer {
//我们的电脑需要连接上转接器才能上网
public void net(NetToUsb adapter) {
//上网的具体实现,找一个转接头
adapter.handleRequest();
}
public static void main(String[] args) {
//电脑,适配器,网线
Computer computer = new Computer();
Adaptee adaptee = new Adaptee();
Adapter adapter = new Adapter(adaptee);
computer.net(adapter);
}
}
连接网线上网!原文:https://www.cnblogs.com/xgp123/p/12306674.html