中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      php面向對象全攻略:多態的應用

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

      php面向對象全攻略:多態的應用

        多態的應用

        多態是除封裝和繼承之外的另一個面向對象的三大特性之一,我個人看來PHP 中雖然可

        以實現多態,但和C++還有Java 這些面向對象的語言相比,多態性并不是那么突出,因為PHP

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

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

        對象的能力,比如說在公司上班,每個月財務發放工資,同一個發工資的方法,在公司內不

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

        所以同一個發工資的方法就出現了多種形態。對于面向對象的程序來說,多態就是把子類對

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

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

        我們現在來看一個例子,首先還是要使用多態就要有父類對象和子類對象的關系。做一

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

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

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

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

        代碼片段

        復制代碼 代碼如下:

        <?

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

        interface Shape{

        function area();

        function perimeter();

        }

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

        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));

        }

        }

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

        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()."
      ";

        ?>

        上例執行結果:

        執行結果

        矩形的面積是:50

        矩形的周長是:30

        圓形的面積是:314

        圓形的周長是:62.8

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

        的面積和周長的方法,出現了不同的結果,這就是一種多態的應用,其實在我們PHP 這種弱

        類形的面向對象的語言里面,多態的特性并不是特別的明顯,其實就是對象類型變量的變項

        應用。

      【php面向對象全攻略:多態的應用】相關文章:

      PHP面向對象重載重寫的不同10-25

      javascript面向對象中的對象怎么理解09-02

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

      關于PHP var-dump遍歷對象屬性的函數與應用代碼06-21

      JAVA面向對象的三大特性06-14

       PHP的基礎編程與應用10-16

      2016年java面向對象編程題庫及答案10-24

      關于php堆排序實現原理與應用方法10-09

      關于php面試寶典及PHP面試技巧08-16

      PHP的壓縮函數06-21

      主站蜘蛛池模板: 国产精品亚洲ΑV天堂无码| 啊v在线视频| 玉溪市| 亚洲香蕉毛片久久网站老妇人| 成人免费在线网站亚洲| 贺州市| 国产内射一区二区三区| 污污污国产免费网站| 国产亚洲精品不卡在线| 常州市| 当雄县| 2022AV一区在线| 青青草国内视频在线观看| 色婷婷一区二区三区四区| 国产精品亚洲综合色区丝瓜 | 97碰碰碰人妻视频无码| 日韩人妻精品一区二区在线推荐| 国产亚洲精品综合99久久| 国产精品一区久久av| 诏安县| 临漳县| 免费视频一区二区三区亚洲激情| 梨树县| 初尝人妻少妇中文字幕在线| 长岭县| 中文字幕日韩精品美一区二区三区 | 北票市| 看黄色亚洲看黄色亚洲| 东辽县| 日韩亚洲国产综合二区| 中文字幕亚洲好看有码| 中文字幕精品乱码亚洲一区99| 临邑县| 国产福利97精品一区二区| 东丽区| 免费人妻精品一区二区| 久久精品国产视频在热| 国产自产av一区二区三区性色 | 国产精品黑人一区二区三区| 免费无码黄网站在线观看| 亚洲精品久久久蜜桃一区|