Maison >développement back-end >tutoriel php >Méthode PHP pour implémenter des applications polymorphes basées sur la technologie d'interface

Méthode PHP pour implémenter des applications polymorphes basées sur la technologie d'interface

墨辰丷
墨辰丷original
2018-05-23 14:45:321537parcourir

Cet article présente principalement PHP pour implémenter des applications polymorphes simples basées sur la technologie d'interface, et analyse les techniques de définition, d'héritage, d'appel et d'implémentation polymorphes des interfaces PHP sous la forme d'exemples complets. Les amis dans le besoin peuvent s'y référer

L'exemple de cet article décrit l'implémentation d'applications polymorphes simples en PHP basées sur la technologie d'interface. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

<?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设备的方法
?>

Effet d'exécution d'instance :

Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun.


Recommandations associées :

Compétences en constructeur et destructeur_php

PHPUn moyen simple de générer des fichiers txt dans un répertoire spécifié_php conseils

Explication détaillée de la gestion globale des erreurs pour PHP_ compétences php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn