封裝,繼承,多態(tài)是面向?qū)ο蟮娜筇匦?,本文總結(jié)一下 php 是如何實(shí)現(xiàn)這三大特性的
10年積累的網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有晉城免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
class className{ public $attribute1 //成員屬性 //成員方法 function fun1(){ echo "method1" } }
abstract class className1{ //抽象方法 abstract public function fun1(); abstract private function fun2(); abstract protected function fun3(); }
抽象類至少有一個(gè)抽象方法
抽象類不能被實(shí)例化,只能被繼承 extends
繼承的派生類要把所有方法重載才能實(shí)例化對(duì)象
可以看做是一種成員屬性全部為抽象的抽象類,用作定義規(guī)范(面向接口編程)
interface IName { const NAME; function fun1(); }
接口中方法 必須全為抽象方法
接口中成員方法和屬性為 public
接口成員屬性必須為常量
接口不能被實(shí)例化,只能被引用 implement
被引用后,派生類不許把所有方法重載才能實(shí)例化對(duì)象
實(shí)例化對(duì)象,使用 -> 訪問(wèn)對(duì)象內(nèi)容 (成員屬性和成員方法)
$instance1 = new className; //實(shí)例化對(duì)象 $instance1->attribute1; //訪問(wèn)成員屬性 $instance1->method1(); //訪問(wèn)成員方法
作用域 | public | protected | private |
---|---|---|---|
全局 | Yes | No | No |
繼承類 | Yes | Yes | No |
本類 | Yes | Yes | Yes |
類的成員方法前如不加封裝關(guān)鍵字,默認(rèn)為public,不過(guò)最好加上關(guān)鍵字,便于閱讀
訪問(wèn)當(dāng)前 對(duì)象中的成員屬性和成員方法
在不實(shí)例化的情況下訪問(wèn)當(dāng)前 類的成員屬性和成員方法, 作用域在定義類時(shí)確定。該關(guān)鍵字常與 static, const 搭配使用,用于訪問(wèn)靜態(tài)成員和常量
在不實(shí)例化的情況下訪問(wèn)當(dāng)前 類的成員屬性或成員方法。常用于在派生類中訪問(wèn)基類成員
php 只能單一繼承
class B extends A{ ...... }
用于引用接口,不同于繼承的單一性,一個(gè)類可以引用多個(gè)接口
class A implements demo1, demo2, demo3{ ...... }
先繼承后引用,單繼承多引用
class A extends B implements demo1, demo2, demo3{ ...... }
final class className1{ final func1(){ ...... } }
加了 final 關(guān)鍵字的類不能被繼承
基類中加了 final 關(guān)鍵字的成員方法不能在派生類中被重載
加了 static 關(guān)鍵字的成員方法和成員屬性不具備多態(tài)性,用于在不實(shí)例化的情況下訪問(wèn)。靜態(tài)屬性單獨(dú)占用內(nèi)存,不會(huì)在對(duì)象實(shí)例化時(shí)被反復(fù)創(chuàng)建。
class className1{ static $atrr1; static func1(){ ...... } }
用于在類中定義常量,類似用于在外部定義常量的PHP關(guān)鍵字 define(); const 只能修飾類中的成員屬性
class className1{ const NAME; }
常量一般用大寫字母命名,且常量不使用 $ 符號(hào)
用于判斷對(duì)象實(shí)例類型
$obj = new A(); if ($obj instanceof A) { echo 'A'; }
摘自php手冊(cè)
當(dāng)前名稱:php面向?qū)ο蠡A(chǔ)總結(jié)
網(wǎng)站URL:http://jinyejixie.com/article24/pdsoje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、、手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、ChatGPT、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)