zoukankan      html  css  js  c++  java
  • PHP中多态,抽象类,接口,

    小例子:

    需求:公司定义一个接口让我们开发功能

      usb.interface.php: 

    1 <?php
    2 interface USB{
    3 
    4     public function run();
    5 }

        store.class.php:

     1 <?php
     2 include_once("./usb.interface.php");
     3 class store implements USB{
     4     
     5     public function run(){
     6         $this -> initialize();
     7     }
     8 
     9     private function initialize(){
    10         echo "store running ..";
    11     }
    12 }

      mouse.class.php:

     1 <?php
     2 include_once("./usb.interface.php");
     3 class mouse implements USB{
     4 
     5     public function run(){
     6         $this -> init();
     7     }
     8 
     9     public function init(){
    10         echo "mouse running ...";
    11     }
    12 }

      key.class.php:

    <?php
    include_once("./usb.interface.php");
    class key implements USB{
        
        public function run(){
            $this -> init();
        }
    
        public function init(){
            echo "key running ..";
        }
    }

    使用:computer.class.php

    <?php
    include("./mouse.class.php");
    include("./store.class.php");
    include("./key.class.php");
    
    class computer{
    
        public function useUSB($obj){
            $obj -> run();
        }
    }
    
    $computer = new computer();
    
    $computer -> useUSB(new mouse()); 
    echo "<hr />";
    $computer -> useUSB(new store());
    echo "<hr />";
    $computer -> useUSB(new key());
  • 相关阅读:
    RQNOJ 1 明明的随机数
    poj1284
    poj1061
    51nod1305
    51nod 1344
    poj2240
    poj1860
    使用SwitchToThisWindow时不切换问题
    c#拷贝整个文件夹到指定文件夹下(非递归)
    IniHelper
  • 原文地址:https://www.cnblogs.com/boundless-sky/p/6024111.html
Copyright © 2011-2022 走看看