《PHP的類和對象(四)訪問控制和繼承》要點:
本文介紹了PHP的類和對象(四)訪問控制和繼承,希望對您有用。如果有疑問,可以聯(lián)系我們。
歡迎參與《PHP的類和對象(四)訪問控制和繼承》討論,分享您的想法,維易PHP學院為您提供專業(yè)教程。
拜訪控制
對屬性或方法的拜訪控制,是通過在前面添加關鍵字 public(公有),protected(受保護)或 private(私有)來實現(xiàn)的.被定義為公有的類成員可以在任何地方被拜訪.被定義為受保護的類成員則可以被其自身以及其子類和父類拜訪.被定義為私有的類成員則只能被其定義所在的類拜訪.
默認為Public,var也是Public.
拜訪同一個對象類型的私有成員
如果構(gòu)造函數(shù)定義成了私有辦法,就不能直接實例化對象了,這時候一般通過靜態(tài)辦法進行實例化,在設計模式中會經(jīng)常使用這樣的辦法來控制對象的創(chuàng)建,比如單例模式只允許有一個全局唯一的對象.
對象承繼
通過extends來繼承,子類就會繼承父類所有公有的和受保護的辦法.除非子類覆蓋了父類的辦法,被繼承的辦法都會保留其原有功能.
如果父類中的辦法被聲明為 final,則子類無法覆蓋該辦法.同樣如果一個類被聲明為 final,則不能被繼承. 需要注意的是: 屬性不能被定義為 final,只有類和辦法才能被定義為 final.
如果新的類中沒有本身的構(gòu)造函數(shù),那么子類會自動調(diào)用父類的構(gòu)函數(shù).
子類可以使用parent::辦法()或者$this->辦法()(不建議使用)來調(diào)用父類的函數(shù).
如果一個子類中的辦法與父類同名,那么 parent::辦法() 調(diào)用的是父類的辦法,而 $this->辦法() 調(diào)用的是子類的辦法.
屬性無法區(qū)分父類和子類,可以使用$this->屬性(沒有$)挪用,子類同名屬性會覆蓋父類的.
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/12410.html