下面我們以實例與教程來講解php 面向對象與封裝性,以及各種封裝的申明等。
第七章(5)面向對象詳解_封裝性
下面我們以實例與教程來講解php 面向對象與封裝性,以及各種封裝的申明等。
封裝性:就是將對象內部的屬性或方法封裝在自己的對象內部,在對象內部可以被使用或訪問,但在對象的外部或者其它對象裡不能使用封裝的成員.
封裝使用的關鍵字:private
封裝的含義:
1.把對象的全部屬性和全部方法結合在一起,形成一個不可分割的獨立的單位(對象).
2.信息隱蔽,即盡可能的隱蔽內部細節,對外形成一個邊界(或者說對外形成一個屏障),只保留有限的對外的接口,使它與外部發生關系.
第七章(6)面向對象詳解_封裝時所用的四個常用的方法
帶"__"加函數的方法是在某一時刻自動調用的方法.
__get(屬性的名稱) 直接去調用私有屬性的時候調用__get的方法.
__set(1.屬性名 2.屬性值) 直接給私有屬性賦值的時候調用__set的方法.
__isset(屬性名稱) 判斷對象內部私有屬性是否存在的時候調用__isset的方法.
__unset(屬性名稱) 刪除對象內部私有屬性的時候調用__unset的方法.
第七章(7)面向對象詳解_繼承
類的繼承:繼承就是對原有類的擴展.
新擴展的子類:1.class 2.原父類名稱 3.extends繼承關鍵字 4.新子類名稱.
類的繼承就是把父類裡面所有的內容都繼承到子類,除了私有的屬性和方法.
第七章(8)面向對性詳解_方法的覆蓋和訪問
類方法的重載:方法名稱要與父類的相同,如要調用父類某方法的全部內容可以在子類方法裡使用關鍵字pr]arent:: 如只調用部分就重寫.
訪問類型:
private 私有 只能在本類裡進行訪問.
protected 保護 只能在本類和子類裡進行訪問.
public 公有 不受限制,在本類,子類和外部都可以進行訪問.
第七章(9)面向對象詳解_常用的final,static,const關鍵字
final:只能用來定義類和方法.
作用:使用final定義的類不能被繼承.
使用final定義的方法不能被重載覆蓋.
static:將屬性和方法定義成靜態.
static可以修飾屬性,也可以修飾方法.
使用static聲明的方法裡面不能使用非靜態成員.
static的作用是只需要在類裡面聲明一次,此類產生的所有對象都有static修飾過屬性和方法,但不會在內存裡面反復使用內存,可有效的節約內存.
要訪問static定義的屬性或方法時使用 類名::定義的屬性或方法,或使用felf::定義的屬性或方法進行訪問,使用對象不能直接進行訪問.
const的作用是在類裡面定義成員屬性為常量.
const只能修飾屬性.
const只能在聲明的時候初始值.
使用const聲明屬性不用加$.
要訪問const定義的屬性使用 類名::定義的屬性 進行訪問,使用對象不能直接進行訪問.