佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > PHP面向?qū)ο蟪绦蛟O(shè)計(jì)繼承用法簡(jiǎn)單示例

PHP面向?qū)ο蟪绦蛟O(shè)計(jì)繼承用法簡(jiǎn)單示例

熱門(mén)標(biāo)簽:Linux服務(wù)器 團(tuán)購(gòu)網(wǎng)站 Mysql連接數(shù)設(shè)置 電子圍欄 阿里云 服務(wù)器配置 科大訊飛語(yǔ)音識(shí)別系統(tǒng) 銀行業(yè)務(wù)

本文實(shí)例講述了PHP面向?qū)ο蟪绦蛟O(shè)計(jì)繼承用法。分享給大家供大家參考,具體如下:

?php
//繼承是子類(lèi)(派生類(lèi))從父類(lèi)(基類(lèi),超類(lèi))繼承屬性和方法。
//子類(lèi)也可以有自己的屬性和方法。
//一個(gè)父類(lèi)可以被多個(gè)子類(lèi)繼承。
//如果想修改父類(lèi)的方法,只能在子類(lèi)里重寫(xiě)這個(gè)方法,這也是多態(tài)的體現(xiàn)。
//用if($obj instanceof SomeClass){}來(lái)檢查一個(gè)對(duì)象是否屬于一個(gè)類(lèi)。
//如果$name是protected,private訪問(wèn)權(quán)限,那么將不能在類(lèi)外被直接訪問(wèn)。
//如果$name是private訪問(wèn)權(quán)限,那么將只能在自身類(lèi)里訪問(wèn)。
//如果$name是protected訪問(wèn)權(quán)限,可以自身類(lèi)里訪問(wèn),也可以在子類(lèi)里訪問(wèn)。
//__construct()是類(lèi)的構(gòu)造函數(shù),在創(chuàng)建對(duì)象實(shí)例時(shí),自動(dòng)訪問(wèn)該函數(shù),子類(lèi)也有自己的構(gòu)造函數(shù)。
//子類(lèi)沒(méi)有構(gòu)造函數(shù)時(shí),在創(chuàng)建對(duì)象時(shí),會(huì)調(diào)用父類(lèi)的構(gòu)造函數(shù)。
//子類(lèi)有構(gòu)造函數(shù)時(shí),不用在調(diào)用父類(lèi)的構(gòu)造函數(shù),除非有parent顯式調(diào)用時(shí),才去調(diào)用父類(lèi)的構(gòu)造函數(shù)。
//程序結(jié)束時(shí),或者用unset()對(duì)象時(shí),會(huì)調(diào)用析構(gòu)函數(shù)。
//如果類(lèi)里定義了final的方法,那么此方法將不能被子類(lèi)重寫(xiě)。
//如果類(lèi)聲明了final,那么此類(lèi)不能被繼承。
//作為慣例,私有的變量名通常以一個(gè)下劃線開(kāi)始。
//如果一個(gè)類(lèi)的方法只能被它自己調(diào)用,那么可以設(shè)置為受保護(hù)的或者私有的。
//$this引用當(dāng)前對(duì)象的實(shí)例,self被用作當(dāng)前類(lèi)的一個(gè)引用。
//靜態(tài)屬性和類(lèi)常數(shù)只能用類(lèi)名、parent、self來(lái)訪問(wèn)
//函數(shù)名不區(qū)分大小寫(xiě),變量區(qū)分大小寫(xiě)。
class Employees{
  protected $name = null;
  public static $count = 0;
  function __construct($nameStr){
    $this->name = $nameStr;
    echo "p>$this->name : ",self::$count," : parent : __construct/p>";
  }
  function work(){
    echo "p>$this->name is working/p>";
  }
  
  function __destruct(){
    echo "p>parent unset $this->name/p>";
  }
}
class Managers extends Employees{
  private $pos = null;
  function __construct($p,$nameStr){
    parent::$count++;
    parent::__construct($nameStr);
    $this->pos = $p;
    echo "p>$this->name , $this->pos : self : __construct/p>";
  }
  function assignJob(){
    echo "p>$this->name assign jobs/p>";
  }
  function getName(){
    return $this->name;
  }
  function __destruct(){
    echo "p>self unset $this->name/p>";
  }
}
class Programmers extends Employees{
  function code(){
    echo "p>$this->name is coding/p>";
  }
  function getName(){
    return $this->name;
  }
}
$e1 = new Employees('e1');
$e2 = new MAnagers(2,'e2');
$e3 = new Programmers('e3');
$e1->work();
$e2->work();
$e3->work();
$e2->assignJob();
$e3->Code();
echo "p>{$e3->getName()}/p>";
//echo "p>$e1->name/p>";
if($e2 instanceof Employees){
  echo "p>ok/p>";
}else{
  echo "p>no/p>";
}
unset($e1,$e2,$e3);

運(yùn)行結(jié)果:

e1 : 0 : parent : __construct

e2 : 1 : parent : __construct

e2 , 2 : self : __construct

e3 : 1 : parent : __construct

e1 is working

e2 is working

e3 is working

e2 assign jobs

e3 is coding

e3

ok

parent unset e1

self unset e2

parent unset e3

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語(yǔ)法入門(mén)教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:
  • PHP面向?qū)ο笕筇攸c(diǎn)學(xué)習(xí)(充分理解抽象、封裝、繼承、多態(tài))
  • 詳解php中的類(lèi)與對(duì)象(繼承)
  • php面向?qū)ο笕ヂ?(七) 繼承性
  • PHP入門(mén)教程之面向?qū)ο蟮奶匦苑治?繼承,多態(tài),接口,抽象類(lèi),抽象方法等)
  • PHP面向?qū)ο蟪绦蛟O(shè)計(jì)高級(jí)特性詳解(接口,繼承,抽象類(lèi),析構(gòu),克隆等)
  • PHP面向?qū)ο罄^承用法詳解(優(yōu)化與減少代碼重復(fù))
  • PHP面向?qū)ο蟪绦蛟O(shè)計(jì)OOP繼承用法入門(mén)示例
  • PHP面向?qū)ο蟪绦蛟O(shè)計(jì)之接口的繼承定義與用法詳解
  • PHP學(xué)習(xí)記錄之面向?qū)ο螅∣bject-oriented programming,OOP)基礎(chǔ)【類(lèi)、對(duì)象、繼承等】
  • PHP 對(duì)象繼承原理與簡(jiǎn)單用法示例

標(biāo)簽:蚌埠 衡水 萍鄉(xiāng) 江蘇 大理 廣元 衢州 棗莊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP面向?qū)ο蟪绦蛟O(shè)計(jì)繼承用法簡(jiǎn)單示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢(xún)

    • 400-1100-266
    孟津县| 利津县| 滁州市| 泾川县| 朝阳区| 延川县| 上思县| 陇川县| 肥城市| 临西县| 岳普湖县| 申扎县| 巍山| 永川市| 嫩江县| 汤阴县| 崇信县| 社会| 德安县| 胶州市| 平顶山市| 临夏县| 澎湖县| 泰州市| 卓资县| 阿克陶县| 阿拉尔市| 手游| 云浮市| 孟津县| 青浦区| 敦煌市| 确山县| 九龙坡区| 肥西县| 高尔夫| 洱源县| 柳林县| 漳平市| 洪江市| 麦盖提县|