php教程

超轻量级php框架startmvc

PHP基于接口技术实现简单的多态应用完整实例

更新时间:2020-03-19 12:24:24 作者:startmvc
本文实例讲述了PHP基于接口技术实现简单的多态应用。分享给大家供大家参考,具体如下:

本文实例讲述了PHP基于接口技术实现简单的多态应用。分享给大家供大家参考,具体如下:


<?php
//实现多态的一个简单实例
interface USB{
 //接口中的方法权限必须是public,并且只有抽象方法或常量
 function mount();
 function work();
 function unmount();
}
class Upan implements USB{
 function mount(){
 echo "U盘被成功挂载!!<br>";
 }
 function work(){
 echo "U盘正在工作……<br>";
 }
 function unmount(){
 echo "U盘被成功卸载!!<br>";
 }
}
class ShuBiao implements USB{
 function mount(){
 echo "USB鼠标被成功插入!<br>";
 }
 function work(){
 echo "USB鼠标正在工作……<br>";
 }
 function unmount(){
 echo "USB鼠标被成功拔除!<br>";
 }
}
class DianNao{
 function useUSB($usb){ //这就是一种多态,当传进去的参数为不同的usb设备时,调用不同设备的相同的方法名,但产生了不同的效果
 $usb->mount();
 $usb->work();
 $usb->unmount();
 }
}
class Worker{
 function install(){
 $dn=new DianNao; //激活电脑
 $up=new Upan; //激活优盘
 $sb=new ShuBiao; //激活鼠标
 $dn->useUSB($up); //电脑访问优盘
 $dn->useUSB($sb); //电脑访问鼠标
 }
}
$usb_user=new Worker; //激活一个USB设备的使用者
$usb_user->install(); //使用者调用安装USB设备的方法
?>

实例运行效果:

PHP 接口 多态