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

資訊專(zhuān)欄INFORMATION COLUMN

PHP的抽象類(lèi)、接口的區(qū)別和選擇

keithxiaoy / 1129人閱讀

摘要:對(duì)抽象類(lèi)的使用是通過(guò)關(guān)鍵字。抽象類(lèi)中可以聲明各種類(lèi)型成員變量,實(shí)現(xiàn)數(shù)據(jù)的封裝。接口中的方法默認(rèn)都是類(lèi)型的,而抽象類(lèi)中的方法可以使用來(lái)修飾。抽象類(lèi)還是接口如果要?jiǎng)?chuàng)建一個(gè)模型,這個(gè)模型將由一些緊密相關(guān)的對(duì)象采用,就可以使用抽象類(lèi)。

區(qū)別:

1、對(duì)接口的使用是通過(guò)關(guān)鍵字implements。對(duì)抽象類(lèi)的使用是通過(guò)關(guān)鍵字extends。當(dāng)然接口也可以通過(guò)關(guān)鍵字extends繼承。
2、接口中不可以聲明成員變量(包括類(lèi)靜態(tài)變量),但是可以聲明類(lèi)常量。抽象類(lèi)中可以聲明各種類(lèi)型成員變量,實(shí)現(xiàn)數(shù)據(jù)的封裝。(另JAVA接口中的成員變量都要聲明為public static final類(lèi)型)
3、接口沒(méi)有構(gòu)造函數(shù),抽象類(lèi)可以有構(gòu)造函數(shù)。
4、接口中的方法默認(rèn)都是public類(lèi)型的,而抽象類(lèi)中的方法可以使用private,protected,public來(lái)修飾。
5、一個(gè)類(lèi)可以同時(shí)實(shí)現(xiàn)多個(gè)接口,但一個(gè)類(lèi)只能繼承于一個(gè)抽象類(lèi)。

抽象類(lèi)還是接口

如果要?jiǎng)?chuàng)建一個(gè)模型,這個(gè)模型將由一些緊密相關(guān)的對(duì)象采用,就可以使用抽象類(lèi)。如果要?jiǎng)?chuàng)建將由一些不相關(guān)對(duì)象采用的功能,就使用接口。如果必須從多個(gè)來(lái)源繼承行為,就使用接口。如果知道所有類(lèi)都會(huì)共享一個(gè)公共的行為實(shí)現(xiàn),就使用抽象類(lèi),并在其中實(shí)現(xiàn)該行為。

";
    }
    abstract function meth2();
    public $var1="var1";
    public static $var2="var2";
    const Var3="Var3";
}
class Son extends Father {
    function meth2() {
        echo "meth2 of Son...
"; } } $s=new Son(); echo $s->var1."
"; echo Father::$var2."
"; echo Father::Var3."
"; Interface IFather { //public $iVar1="iVar1"; 此處接口定義中不能包含成員變量 //public static $iVar2="iVar2"; 此處接口定義中不能包含靜態(tài)變量 const iVar3="iVar3"; function iMeth1(); } Class ISon implements IFather { function iMeth1() { echo "iMeth1...
"; } } $is=new ISon(); echo IFather::iVar3; ?>

zzy

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

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

相關(guān)文章

  • PHP 抽象類(lèi)(abstract class) 接口(interface)

    摘要:中的抽象類(lèi)和接口有什么區(qū)別呢我們來(lái)看下具體的說(shuō)明。而抽象類(lèi)中抽象方法前則必須加上表示顯示聲明為抽象方法。抽象類(lèi)不能被直接實(shí)例化。詳情請(qǐng)看原文中的抽象類(lèi)和接口注本文為轉(zhuǎn)載,原文地址中的抽象類(lèi)和接口 PHP中的 抽象類(lèi)(abstract class)和 接口(interface)有什么區(qū)別呢?我們來(lái)看下具體的說(shuō)明。 一、 抽象類(lèi)和接口的異同 1.相同點(diǎn): (1)兩者都是抽象類(lèi),都不能實(shí)例化...

    awokezhou 評(píng)論0 收藏0
  • PHP設(shè)計(jì)模式(二):抽象類(lèi)接口

    摘要:在設(shè)計(jì)模式中,抽象類(lèi)不能夠被實(shí)例化初始化,但是可以依靠具體類(lèi)的繼承來(lái)實(shí)現(xiàn)。對(duì)于大型項(xiàng)目來(lái)說(shuō),對(duì)象都是由基本的抽象類(lèi)繼承實(shí)現(xiàn),而這些類(lèi)的方法通常都由接口來(lái)定義。 原文地址:PHP設(shè)計(jì)模式(二):抽象類(lèi)和接口 Introduction 對(duì)于編程來(lái)說(shuō),對(duì)事物的抽象是一個(gè)老生常談的話(huà)題,抽象問(wèn)題更利于面向?qū)ο缶幊桃约俺绦蛟O(shè)計(jì)模式。和C/C++,Java,Python等語(yǔ)言一樣,PHP也支持面向...

    xialong 評(píng)論0 收藏0
  • PHP面試之面向?qū)ο螅?)

    摘要:二面向?qū)ο笥惺裁刺卣髅嫦驅(qū)ο蟮闹饕卣饔谐橄罄^承封裝和多態(tài)。析構(gòu)函數(shù)析構(gòu)函數(shù)是在引入的,它的作用與調(diào)用時(shí)機(jī)和構(gòu)造函數(shù)剛好相反,它在對(duì)象被銷(xiāo)毀時(shí)自動(dòng)執(zhí)行。 PHP面試專(zhuān)欄正式起更,每周一、三、五更新,提供最好最優(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
  • PHP面試??純?nèi)容之面向?qū)ο螅?)

    摘要:繼上一篇面試常考內(nèi)容之面向?qū)ο蟀l(fā)表后,今天更新,需要的可以直接點(diǎn)擊文字進(jìn)行跳轉(zhuǎn)獲取。析構(gòu)函數(shù),當(dāng)對(duì)象被銷(xiāo)毀時(shí)調(diào)用。 PHP面試專(zhuān)欄正式起更,每周一、三、五更新,提供最好最優(yōu)質(zhì)的PHP面試內(nèi)容。繼上一篇PHP面試??純?nèi)容之面向?qū)ο螅?)發(fā)表后,今天更新(2),需要(1)的可以直接點(diǎn)擊文字進(jìn)行跳轉(zhuǎn)獲取。整個(gè)面向?qū)ο笪恼碌慕Y(jié)構(gòu)涉及的內(nèi)容模塊有: 一、面向?qū)ο笈c面向過(guò)程有什么區(qū)別?二、面向?qū)?..

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

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