PHP 对象 多态性

发布时间:2020-05-21 05:08:59 作者:津沙港湾
来源:网络 阅读:247
/*
 * 多态特性
 * 1.程序扩展准备
 * 必须有继承关系,父类最好是接口或抽象类
 */
 //定义接口
interface USB{
    const WIDTH  = 12;
    const HEIGHT = 3;
    function load();
    function run();
    function stop();
}
//定义电脑类
class Computer{
    function useUSB(USB $usb){
        $usb->load();
        $usb->run();
        $usb->stop();
    }
}

//定义鼠标类 实现USB接口
class Mouse implements USB{
    function load(){
        echo '加载鼠标成功!<br/>';
    }
    function run(){
        echo '运行鼠标功能!<br/>';
    }
    function stop(){
        echo '鼠标工作结束!<br/>';
    }
}

//定义键盘类 实现USB接口
class KeyBoard implements USB{
    function load(){
        echo '加载键盘成功!<br/>';
    }
    function run(){
        echo '运行键盘功能!<br/>';
    }
    function stop(){
        echo '键盘工作结束!<br/>';
    }
}

//定义工作者类
class Worker{
    function useC(){
        $c = new Computer();
        $m = new Mouse();
        $k  = new KeyBoard();
        //调用电脑类中的方法 传入鼠标对象参数
        $c->useUSB($m);
        //调用电脑类中的方法 传入键盘对象参数
        $c->useUSB($k);
    }
}
$w = new Worker();
$w->useC();


推荐阅读:
  1. PHP 对象 多态性 简单图形计算器 高洛峰 细说PHP
  2. 一个php多态性的小例子

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php 对象 多态性

上一篇:Qt高级——Qt日志信息处理

下一篇:MyBatis源码解析之日志记录

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》