<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • php面向?qū)ο笕ヂ裕憾鄳B(tài)的應(yīng)用

    時間:2024-10-28 04:37:51 PHP 我要投稿
    • 相關(guān)推薦

    php面向?qū)ο笕ヂ裕憾鄳B(tài)的應(yīng)用

      多態(tài)的應(yīng)用

      多態(tài)是除封裝和繼承之外的另一個面向?qū)ο蟮娜筇匦灾,我個人看來PHP 中雖然可

      以實現(xiàn)多態(tài),但和C++還有Java 這些面向?qū)ο蟮恼Z言相比,多態(tài)性并不是那么突出,因為PHP

      本身就是一種弱類型的語言,不存在父類對象轉(zhuǎn)化為子類對象或者是子類對象轉(zhuǎn)化為父類對

      象的問題,所以多態(tài)的應(yīng)用并不是那么的明顯;所謂多態(tài)性是指一段程序能夠處理多種類型

      對象的能力,比如說在公司上班,每個月財務(wù)發(fā)放工資,同一個發(fā)工資的方法,在公司內(nèi)不

      同的員工或是不同職位的員工,都是通過這個方法發(fā)放的,但是所發(fā)的工資都是不相同的。

      所以同一個發(fā)工資的方法就出現(xiàn)了多種形態(tài)。對于面向?qū)ο蟮某绦騺碚f,多態(tài)就是把子類對

      象賦值給父類引用,然后調(diào)用父類的方法,去執(zhí)行子類覆蓋父類的那個方法,但在PHP 里是

      弱類型的,對象引用都是一樣的不分父類引用,還是子類引用。

      我們現(xiàn)在來看一個例子,首先還是要使用多態(tài)就要有父類對象和子類對象的關(guān)系。做一

      個形狀的接口或是抽象類做為父類,里面有兩個抽象方法,一個求周長的方法,另一個是求

      面積的方法;這接口的子類是多種不同的形狀,每個形狀又都有周長和面積,又因為父類是

      一個接口,所以子類里面就必須要實現(xiàn)父類的這兩個周長和面積的抽象方法,這樣做的目的

      是每種不同形狀的子類都遵守父類接口的規(guī)范,都要有求周長和求面積的方法。

      代碼片段

      復(fù)制代碼 代碼如下:

      <?

      //定義了一個形狀的接口,里面有兩個抽象方法讓子類去實現(xiàn)

      interface Shape{

      function area();

      function perimeter();

      }

      //定義了一個矩形子類實現(xiàn)了形狀接口中的周長和面積

      class Rect implements Shape{

      private $width;

      private $height;

      function __construct($width, $height){

      $this->width=$width;

      $this->height=$height;

      }

      function area(){

      return "矩形的面積是:".($this->width*$this->height);

      }

      function perimeter(){

      return "矩形的周長是:".(2*($this->width+$this->height));

      }

      }

      //定義了一個圓形子類實現(xiàn)了形狀接口中的周長和面積

      class Circular implements Shape{

      private $radius;

      function __construct($radius){

      $this->radius=$radius;

      }

      function area(){

      return "圓形的面積是:".(3.14*$this->radius*$this->radius);

      }

      function perimeter(){

      return "圓形的周長是:".(2*3.14*$this->radius);

      }

      }

      //把子類矩形對象賦給形狀的一個引用

      $shape=new Rect(5, 10);

      echo $shape->area()."
    ";

      echo $shape->perimeter()."
    ";

      //把子類圓形對象賦給形狀的一個引用

      $shape=new Circular(10);

      echo $shape->area()."
    ";

      echo $shape->perimeter()."
    ";

      ?>

      上例執(zhí)行結(jié)果:

      執(zhí)行結(jié)果

      矩形的面積是:50

      矩形的周長是:30

      圓形的面積是:314

      圓形的周長是:62.8

      通過上例我們看到,把矩形對象和圓形對象分別賦給了變量$shape,調(diào)用$shape 引用中

      的面積和周長的方法,出現(xiàn)了不同的結(jié)果,這就是一種多態(tài)的應(yīng)用,其實在我們PHP 這種弱

      類形的面向?qū)ο蟮恼Z言里面,多態(tài)的特性并不是特別的明顯,其實就是對象類型變量的變項

      應(yīng)用。

    【php面向?qū)ο笕ヂ裕憾鄳B(tài)的應(yīng)用】相關(guān)文章:

    PHP面向?qū)ο笾剌d重寫的不同10-25

    PHP對象注入的實例分析08-27

    關(guān)于PHP var-dump遍歷對象屬性的函數(shù)與應(yīng)用代碼06-21

     PHP的基礎(chǔ)編程與應(yīng)用10-16

    2016年java面向?qū)ο缶幊填}庫及答案10-24

    關(guān)于php堆排序?qū)崿F(xiàn)原理與應(yīng)用方法10-09

    關(guān)于php面試寶典及PHP面試技巧08-16

    PHP的壓縮函數(shù)06-21

    主站蜘蛛池模板: 久久人人超碰精品CAOPOREN| 久久久久久无码国产精品中文字幕| 国产精品成人69XXX免费视频| 亚洲国产精品一区二区第一页| 99久久国产综合精品五月天喷水| 久久久久久亚洲精品成人| 国产福利精品视频自拍| 99精品国产高清一区二区麻豆 | 国产高清在线精品一本大道国产 | 国产精品成人h片在线| 91精品国产福利在线导航| 亚洲日韩精品A∨片无码| 精品国产日韩亚洲一区| 夜色www国产精品资源站| 久久精品国产精品亚洲艾草网美妙 | 九九久久精品无码专区| 91热成人精品国产免费| 九九热在线精品视频| 久久精品国产亚洲AV高清热| 亚洲精品乱码久久久久久蜜桃不卡| 久久99精品久久久久久不卡 | 精品福利一区二区三区免费视频| 亚洲精品第一国产综合精品99 | 亚洲av午夜精品一区二区三区| 国产精品制服丝袜亚洲欧美| 999国产精品色在线播放| 日韩精品一区二区三区四区| 国产精品国产三级专区第1集| 国产午夜精品一区二区三区| 久久精品国产亚洲av麻豆色欲 | 97精品国产97久久久久久免费| 国产精品www| 99re这里只有精品6| 国产乱人伦偷精品视频免下载| 精品亚洲成a人片在线观看少妇 | 91精品国产9l久久久久| 激情亚洲一区国产精品| 国产精品后入内射日本在线观看| 国产精品免费看久久久 | 国产精品综合久久第一页| 国产精品成人国产乱一区|