亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

PHP設(shè)計(jì)模式(五):多態(tài)

ZweiZhao / 484人閱讀

摘要:原文地址設(shè)計(jì)模式五多態(tài)在設(shè)計(jì)模式四繼承中我們介紹了繼承,利用來(lái)進(jìn)行程序設(shè)計(jì)的方法。和,,等語(yǔ)言一樣,也支持多態(tài)。多態(tài)更多是是一種面向?qū)ο蟪绦蛟O(shè)計(jì)的概念,讓同一類對(duì)象執(zhí)行同一個(gè)接口,但卻實(shí)現(xiàn)不同的邏輯功能。

原文地址:PHP設(shè)計(jì)模式(五):多態(tài)

Introduction

在PHP設(shè)計(jì)模式(四):繼承中我們介紹了繼承,利用extends來(lái)進(jìn)行程序設(shè)計(jì)的方法。
在PHP設(shè)計(jì)模式(二):抽象類和接口中我們介紹了接口,事實(shí)上也存在利用interface的程序設(shè)計(jì)方法,那就是多態(tài)。
和C/C++,Java,Python等語(yǔ)言一樣,PHP也支持多態(tài)。多態(tài)更多是是一種面向?qū)ο蟪绦蛟O(shè)計(jì)的概念,讓同一類對(duì)象執(zhí)行同一個(gè)接口,但卻實(shí)現(xiàn)不同的邏輯功能。

多態(tài)/Polymorphism

還是用動(dòng)物、鯨魚和鯉魚來(lái)舉例:

eatFish();
$whale->eatMoss();
$carp = new Carp();
$carp->eatFish();
$carp->eatMoss();
?>

運(yùn)行一下:

$ php Inheritance.php
Whale eats fish.
Whale doesn"t eat fish.
Carp eats moss.
Carp doesn"t eat moss.

注意PHP的函數(shù)定義不包含返回值,因此完全可以給不同的接口實(shí)現(xiàn)返回不同類型的數(shù)據(jù)。這一點(diǎn)和C/C++,Java等語(yǔ)言是不同的。此外,返回不同類型的數(shù)據(jù),甚至不返回結(jié)果,對(duì)程序設(shè)計(jì)來(lái)說(shuō),會(huì)額外增加維護(hù)成本,已經(jīng)和使用接口的初衷不同了(接口為了封裝實(shí)現(xiàn),而不同的返回值事實(shí)上是需要調(diào)用者去理解實(shí)現(xiàn)的)。

Summary

合理利用多態(tài)對(duì)接口進(jìn)行不同的實(shí)現(xiàn),簡(jiǎn)化你的編程模型,讓代碼易于維護(hù)。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/21543.html

相關(guān)文章

  • PHP面試之面向?qū)ο螅?)

    摘要:二面向?qū)ο笥惺裁刺卣髅嫦驅(qū)ο蟮闹饕卣饔谐橄罄^承封裝和多態(tài)。析構(gòu)函數(shù)析構(gòu)函數(shù)是在引入的,它的作用與調(diào)用時(shí)機(jī)和構(gòu)造函數(shù)剛好相反,它在對(duì)象被銷毀時(shí)自動(dòng)執(zhí)行。 PHP面試專欄正式起更,每周一、三、五更新,提供最好最優(yōu)質(zhì)的PHP面試內(nèi)容。PHP中面向?qū)ο蟪?嫉闹R(shí)點(diǎn)有以下7點(diǎn),我將會(huì)從以下幾點(diǎn)進(jìn)行詳細(xì)介紹說(shuō)明,幫助你更好的應(yīng)對(duì)PHP面試??嫉拿嫦?qū)ο笙嚓P(guān)的知識(shí)點(diǎn)和考題。整個(gè)面向?qū)ο笪恼碌慕Y(jié)構(gòu)涉...

    phodal 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過(guò)對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來(lái)。注意中,對(duì)象一定是通過(guò)類的實(shí)例化來(lái)的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    李昌杰 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過(guò)對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來(lái)。注意中,對(duì)象一定是通過(guò)類的實(shí)例化來(lái)的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    Lyux 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過(guò)對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來(lái)。注意中,對(duì)象一定是通過(guò)類的實(shí)例化來(lái)的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    AaronYuan 評(píng)論0 收藏0
  • PHP面試??純?nèi)容之面向?qū)ο螅?)

    摘要:面試專欄正式起更,每周一三五更新,提供最好最優(yōu)質(zhì)的面試內(nèi)容。繼上一篇面試常考內(nèi)容之面向?qū)ο蟀l(fā)表后,今天更新面向?qū)ο蟮淖詈笠黄?。面向?qū)ο蟮闹饕卣鳛榉庋b繼承多態(tài)。為了提高內(nèi)聚性減少引起變化,單一原則是低耦合高內(nèi)聚的面向原則上的引申。 PHP面試專欄正式起更,每周一、三、五更新,提供最好最優(yōu)質(zhì)的PHP面試內(nèi)容。繼上一篇PHP面試常考內(nèi)容之面向?qū)ο螅?)發(fā)表后,今天更新面向?qū)ο蟮淖詈笠黄?...

    xfee 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<