国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁課程PHP fun classobject-oriented high-level process

object-oriented high-level process

目錄列表

繼承

繼承

PHP 使用關鍵字 extends 來繼承一個類,PHP 不支持多繼承,格式如下:

class Child extends Parent {
   // 代碼部分
}


php面向對象可以支持多重繼承么

方法重寫

方法重寫

如果從父類繼承的方法不能滿足子類的需求,可以對其進行改寫,這個過程叫方法的覆蓋(override),也稱為方法的重寫。

實例中重寫了 getUrl 與 getTitle 方法:

function getUrl() {
   echo $this->url . PHP_EOL;
   return $this->url;
}
   
function getTitle(){
   echo $this->title . PHP_EOL;
   return $this->title;
}


方法的重寫其實就是

接口

接口

使用接口(interface),可以指定某個類必須實現(xiàn)哪些方法,但不需要定義這些方法的具體內容。

接口是通過 interface 關鍵字來定義的,就像定義一個標準的類一樣,但其中定義所有的方法都是空的。

接口中定義的所有方法都必須是公有,這是接口的特性。

要實現(xiàn)一個接口,使用 implements 操作符。類中必須實現(xiàn)接口中定義的所有方法,否則會報一個致命錯誤。類可以實現(xiàn)多個接口,用逗號來分隔多個接口的名稱。

<?php

// 聲明一個'iTemplate'接口
interface iTemplate
{
    public function setVariable($name, $var);
    public function getHtml($template);
}


// 實現(xiàn)接口
class Template implements iTemplate
{
    private $vars = array();
  
    public function setVariable($name, $var)
    {
        $this->vars[$name] = $var;
    }
  
    public function getHtml($template)
    {
        foreach($this->vars as $name => $value) {
            $template = str_replace('{' . $name . '}', $value, $template);
        }
 
        return $template;
    }
}


實現(xiàn)該接口

實現(xiàn)該接口,必須要實現(xiàn)該接口的所有