博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php适配器模式
阅读量:6910 次
发布时间:2019-06-27

本文共 847 字,大约阅读时间需要 2 分钟。

/*适配器模式将一个类的接口,转换成客户期望的另一个类的接口。适配器让原本接口不兼容的类可以合作无间常见的如类代码升级 */// 旧类class User{    private $user_name;    public function  __construct($user_name)    {        $this->user_name = $user_name;    }    public function userName()    {        echo $this->user_name;    }}//目标角色要用那些方法,包括旧类的方法和新增加的方法interface Target{    public function userName(); //旧类的方法    public function getName();  //新增加的方法}class Adapter implements Target{    // 保存旧的user类    private $adapter;    public function __construct(User $user)    {        $this->adapter = $user;    }    //    public function userName()    {        $this->adapter->userName();    }    public function getName()    {        echo "
新增加了方法"; }}$user = new User("旧类");$adapter = new Adapter($user);$adapter->userName(); // 旧方法$adapter->getName(); // 新方法

 

转载于:https://www.cnblogs.com/itfenqing/p/6821868.html

你可能感兴趣的文章
systemd实践: 依据情况自动重启服务【转】
查看>>
Spring Security教程(五):自定义过滤器从数据库从获取资源信息
查看>>
logstash配置
查看>>
cmp()
查看>>
Git系列四之在本地服务器搭建gitlab仓库管理
查看>>
【附6】hystrix metrics and monitor
查看>>
理解linux安装软件
查看>>
php把数组、字符串 生成文件
查看>>
ionic 布局
查看>>
HashMap原理阅读
查看>>
golang 详解defer
查看>>
洗脑是什么
查看>>
MySQL表名大小写敏感导致的问题
查看>>
FastJSON 简单使用
查看>>
jdk目录详解及其使用方法
查看>>
mysql reset password重置密码
查看>>
[转]DOM 中 Property 和 Attribute 的区别
查看>>
Android在一个应用程序中启动另一个应用程序
查看>>
『原创』c#制作的号码mask程序
查看>>
一起谈.NET技术,Unobtrusive JavaScript in ASP.NET MVC 3
查看>>