PHP设计模式 -- 适配器模式

1、什么是适配器模式?

适配器模式(Adapter)模式:将一个类的接口,转换成客户期望的另一个类的接口。适配器让原本接口不兼容的类可以合作无间。

2、适配器模式中主要角色

目标(Target)角色:定义客户端使用的与特定领域相关的接口,这也就是我们所期待得到的(电视,插孔是3个孔的)
源(Adaptee)角色:需要进行适配的接口(插孔是2个的)
适配器(Adapter)角色:对Adaptee的接口与Target接口进行适配;适配器是本模式的核心,适配器把源接口转换成目标接口,此角色为具体类。(插座)

3、具体代码实现如下

 1 <?php
 2 
 3 // 目标角色,需要适配的
 4 interface Target()
 5 {
 6     public function eat();
 7 }
 8 
 9 // 源角色,已有的
10 class Adaptee
11 {
12     public function show()
13     {
14         echo 111;
15     }
16 }
17 
18 // 适配器角色,实现源角色没有的
19 class Adapter extends Adaptee implements Target
20 {
21     public function eat()
22     {
23         echo 222;
24     }
25 }
26 
27 
28 class Client
29 {
30     public function index()
31     {
32         $ad = new Adapter();
33         $ad->show();
34         $ad->eat();
35     }
36 }

 

posted @ 2022-03-02 19:18  陈浩宇人呢  阅读(142)  评论(0编辑  收藏  举报