php是物件導向的指令碼語言,而我們都知道,物件導向的語言具有三大特性:封裝,
繼承,多型。
封裝
對事物的封裝是指,將事物進行抽象後,提供抽象概念的實現的具體方法。
封裝方法
和別的程式語言一樣,php也只是三種封裝概念:
private,protected,public。
私有/private
私有的概念是,僅僅物件內部可見,外部不可見
保護/protected
保護的概念是,僅僅是自身類和繼承類可見,這個關鍵字的
用途主要是防止濫用類的派生
,另外三方庫編寫的時候會用到,防止誤用。
繼承
對於乙個好的程式設計,需要:
1、類和類之間應該是低耦合的。 2、
繼承通常是繼承自抽象類,而不是具體類。
(抽象類不能被例項化,只能被繼承) 3、
通常直接繼承抽象類的具體類只有一層,在抽象類中用protected來限定。
合理的繼承對於好的程式設計同樣是必不可少的,結合abstract和protected,能讓你編寫出結構清晰的**。
繼承許可權:private、protected、public三者許可權控制不能小於父類,可以擴大父類許可權
多型是指在物件導向中能夠根據使用類的上下文來重新定義或改變類的性質和行為。
唯獨這個多型,php體現的十分模糊。原因是php是弱型別語言。
對物件導向的理解
修飾符一般只修飾屬性和方法,屬性盡量使用private,方法盡量使用public public公開的,只要在同一工程內就可以訪問 protected受保護的,只能在當前包或子類中才能訪問 預設,沒有修飾符即預設,只能在當前包中才能訪問 private,私有的,只能在當前類中使用 static 修飾變...
對物件導向的理解
物件導向包括三個特徵 繼承 封裝 多型。類的繼承性是指從已有的乙個類來extends子類,子類具有了父類的所有特徵,同時,子類也可以有新的特性。比如 人是乙個類,男人具有了人類的所有的特性,比如思考,比如勞動。同時,男人也有新的特性,比如男人會長鬍子。類的封裝是指類把所有的操作都封閉起來,僅僅提供介...
對物件導向的理解
封裝 就是將一類事物的屬性和行為抽象成乙個類,使其屬性私有化,行為公開化,提高了資料的隱秘性的同時,使 模組化。這樣做使得 的復用性更高。繼承 則是進一步將一類事物共有的屬性和行為抽象成乙個父類,而每乙個子類是乙個特殊的父類 有父類的行為和屬性,也有自己特有的行為和屬性。這樣做擴充套件了已存在的 塊...