[PHP] 纯文本查看 复制代码 <?php
// 创建一个USB接口(抽象类)
interface USB{
// 抽象类中的成员变量为固定常量
const width = 12;
const height = 14;
// 申明抽象类中的抽象方法即为制定接口标准
function load();
function run();
function stop();
}
// 接口定义完毕,接下来是以一个实例来演示接口的使用
// 1、创建一台电脑,电脑的useUSB功能是加载、运行、卸载usb设备
// 2、创建一个用户,用户使用电脑来运行某个usb设备
// 3、这个usb设备必须符合上面制定的usb接口的标准,即实现接口抽象类
// 4、最终的结果是【人】在【电脑】上使用【鼠标】,涉及到三个类
// 5、其中鼠标是符合usb规范的
class Computer{
// 由于电脑上制定了USB规范,因此可直接调用规范内的方法
// 如果不符合USB规范,则不能在该电脑上使用该设备
// 符合USB规范则必须实现load()、run()、stop()三个方法
function useUSB($usb){
$usb->load();
$usb->run();
$usb->stop();
}
}
// 人有工作的方法,工作的方法实现即为使用电脑
// 并且是使用电脑上的USB,那前提是他要有USB设备
// 人会在电脑上使用USB设备
class Person{
function work($computer, $device){
$computer->useUSB($device);
}
}
// 创建符合USB规范的鼠标
// 实现该规范的所有方法即可
class Mouse implements USB{
function load(){
echo "加载鼠标成功!<br/>";
}
function run(){
echo "鼠标运行中...<br/>";
}
function stop(){
echo "鼠标卸载成功!<br/>";
}
}
// 1、购买一个鼠标
$m = new Mouse();
// 2、准备一台电脑
$c = new Computer();
// 2、雇佣一个工人
$p = new Person();
// 3、让工人在电脑上使用鼠标
$p->work($c, $m);
运行结果:
加载鼠标成功!
鼠标运行中...
鼠标卸载成功! |