濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > PHP中抽象類,接口功能、定義方法示例

PHP中抽象類,接口功能、定義方法示例

熱門標(biāo)簽:銀川ai電話機(jī)器人 臨沂智能電銷機(jī)器人軟件 十堰ai電話機(jī)器人效果怎么樣 地圖標(biāo)注風(fēng)向標(biāo) 芒果電銷機(jī)器人 浙江外呼電話系統(tǒng)軟件 電梯外呼線路板維修視頻 安陽(yáng)自動(dòng)外呼系統(tǒng)價(jià)格是多少 上海公司外呼系統(tǒng)線路

本文實(shí)例講述了PHP中抽象類,接口功能、定義方法。分享給大家供大家參考,具體如下:

這里先介紹接口,因?yàn)樵谖易罱吹暮脦妆緋hp工具書(shū)中都沒(méi)有提到抽象類。

本人也覺(jué)得,在理解了接口后抽象類也非常好理解。

例子代碼隨便寫(xiě)了一下。例子代碼是很ok的,測(cè)試過(guò)了不會(huì)報(bào)錯(cuò),懶得看代碼的筒靴們看文字一樣。栗子舉的不好。

代碼測(cè)試環(huán)境:php5.3.29

接口(interface):

接口就是為抽象而生的,相當(dāng)于一個(gè)約定或規(guī)范,方便框架搭建,代碼分工。

它里面指定了抽象方法的名稱和參數(shù)和成員常量,但不能包含任何的具體方法,變量.

個(gè)人認(rèn)為php是弱類型語(yǔ)言,強(qiáng)調(diào)的是靈活性。與java相比php里的接口對(duì)類型要求太松弛。不大好用,不推薦大量使用。

  • 1)接口中全部是抽象方法。(因?yàn)橐脕?lái)給子類實(shí)現(xiàn)。所以都要是publicprotected的。)
  • 2)接口中不能有具體方法,且只能有成員常量。
  • 3) 由于php和java c++等強(qiáng)類型語(yǔ)言不同,php是弱類型且動(dòng)態(tài)類型的本身就不指定返回類型,參數(shù)的數(shù)據(jù)類型除四種基本類型不能指定外也可寫(xiě)可不寫(xiě),所以對(duì)方法返回值和參數(shù)的類型無(wú)要求。
  • 4)一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。用法: implements關(guān)鍵字后實(shí)現(xiàn)多個(gè)接口用逗號(hào)隔開(kāi)
interface Car {
  const name = "車子";
  public function run($speed=400,$time=300);
}
class Xiali implements Car {
  public function run($s=100,$t=200){//參數(shù)個(gè)數(shù)必須相同
    echo '哈哈 我會(huì)跑';
    return 'abc';
  }
  public function fly() {
    echo '哈哈我會(huì)飛';
  }
}

抽象類(abstract class):

作用和接口一樣,都是為了規(guī)范子類的功能,只是比接口多包含了具體的內(nèi)容。

1)包含至少一個(gè)抽象方法(abstract function)的類(換言之,任何類只要有了一個(gè)或以上的抽象方法,這個(gè)類就必須是抽象類。)

2)抽象類和接口一樣不能實(shí)例化。都叫抽象的了,還咋實(shí)例化,實(shí)例都是具體的。2333.

3)小結(jié):抽象類和普通類倆區(qū)別:1.至少包含一個(gè)抽象方法 2.不能實(shí)例化。別的都一樣。

4)用法:

abstract class Father{
  abstract function func1();//至少一個(gè)抽象方法。
  public function func2(){//具體方法隨便寫(xiě)。
    echo 'func2';
    $this->func3();
  }
  private function func3(){
    echo '一個(gè)private方法';
  }
}

實(shí)現(xiàn)繼承到的抽象方法時(shí)

/**
 * 繼承抽象類
 * 必須實(shí)現(xiàn)其所有抽象方法
 * 和普通一樣,一個(gè)類也只能繼承一個(gè)抽象類
 */
class Son extends Father {
  public function func1() {
     echo '實(shí)現(xiàn)(重寫(xiě))抽象方法。參數(shù)名個(gè)數(shù)必須相同'
  }
}

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

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

您可能感興趣的文章:
  • php 接口類與抽象類的實(shí)際作用
  • php接口和抽象類使用示例詳解
  • 深入分析php中接口與抽象類的區(qū)別
  • PHP中抽象類、接口的區(qū)別與選擇分析
  • PHP中用接口、抽象類、普通基類實(shí)現(xiàn)“面向接口編程”與“耦合方法”簡(jiǎn)述
  • PHP OPP機(jī)制和模式簡(jiǎn)介(抽象類、接口和契約式編程)
  • PHP入門教程之面向?qū)ο蟮奶匦苑治?繼承,多態(tài),接口,抽象類,抽象方法等)
  • 淺析php中抽象類和接口的概念以及區(qū)別
  • PHP面向?qū)ο蟪绦蛟O(shè)計(jì)高級(jí)特性詳解(接口,繼承,抽象類,析構(gòu),克隆等)
  • PHP抽象類與接口的區(qū)別詳解
  • php抽象類和接口知識(shí)點(diǎn)整理總結(jié)

標(biāo)簽:寧夏 遂寧 徐州 武威 遵義 吐魯番 荊門 常州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP中抽象類,接口功能、定義方法示例》,本文關(guān)鍵詞  PHP,中,抽象,類,接口,功能,;如發(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)文章
  • 下面列出與本文章《PHP中抽象類,接口功能、定義方法示例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于PHP中抽象類,接口功能、定義方法示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    都江堰市| 江华| 马山县| 镇雄县| 穆棱市| 香格里拉县| 深州市| 屯昌县| 商城县| 大名县| 资中县| 延安市| 珲春市| 忻州市| 鄂伦春自治旗| 肥城市| 芦山县| 墨江| 象州县| 克什克腾旗| 手机| 新沂市| 万安县| 嫩江县| 北川| 普陀区| 郑州市| 葫芦岛市| 苗栗市| 汉阴县| 宁远县| 孙吴县| 英吉沙县| 广东省| 大化| 泗洪县| 新疆| 常山县| 申扎县| 香港 | 屯留县|