1,屬性,方法,常量
屬性,常量 用來儲存資料
方法用來存放執行的代碼
注意:在方法內部得到對象的屬性,不能直接echo
2,存取控制
public,protected,private 來實現的
public 定義的類成員可以在任何地方被訪問(類的內部和類的外部)
protected 定義的類成員可以被其所在類的子類和父類訪問(當然在當前類內也可以訪問)
private 定義的類成員只能被其所在類訪問
盡量提高類 對 類成員的控制能力
如果能使用私人的成員就盡量使用私人的成員
3,類常量
1,類常量的定義只能通過 const 常量名 = 常量值
const PATH = '';
2,獲得常量:類名::常量名
3,範圍解析操作符 :: 用於訪問靜態屬性,方法和常量
4,自動載入對象
當我們需要一個類,但是沒有此類時,會自動的__autoload()函數,這樣指令碼引擎在php出錯前,有了最後一次機會載入所需的類
在調用這個函數時,會將當前所需的類名,以參數的形式傳遞到函數中去
5,建構函式 解構函式
1,建構函式()
構造方法,執行個體化一個類的對象時,會自動的先調用這個方法
2,解構函式(PHP對象被銷毀前執行)
解構函式,php的對象被銷毀時(指令碼執行完畢)調用這個函數
3,如果在執行個體化一個類的對象時傳遞參數,意味著向類的建構函式傳遞參數
6,對象獲得(複製)
1,對象之間賦值是引用傳遞
PHP有兩種方法獲得新對象
(1) 通過類執行個體化對象
(2) clone(獲得的是不同的對象)7,物件導向3大特性
1,封裝型
封裝就是將自然實體(特徵)採用電腦物件導向的語言去描述,將自然語言抽象成電腦語言的過程
2,繼承性
有必要將相同的代碼提取出來,然後在需要的地方載入,通過類的繼承來實現 (留個作業,封裝資料庫常用的操作到db.class.php)
3,多態性
多態是物件導向的一種特性,但是在php這種弱類型的語言中,體現的不是很明顯
多態,就是同一個對象的多種狀態
同樣是求面積,長方形和正方形的方法不同,這就是多態
8,靜態屬性
1,物件導向的編程中,我們可以通過對象存取方法和屬性,還可以通過類來訪問它的成員,這樣的方法和屬性就是靜態
2,定義類的靜態屬性,需要增加static關鍵字
3,靜態屬性可以在靜態方法中訪問,也可以在非靜態方法中訪問
4,類的每個執行個體都可以訪問類中定義的靜態方法,不能訪問靜態屬性,因為靜態屬性屬於類的
案例:製作對象計數器(獲得執行個體化了了多少個對象)
9,設計模式
原廠模式:
之所以是原廠模式,就是因為他只負責生產對象
用的最多的地方就是根據條件動態建立對象
單例模式
我們操作資料庫的對象,只需要一個(串連一次就夠了),當一個類,使用一次就能夠完成功能的話,我們需要保證執行個體化一次對象就夠了
10,魔術方法
__construct()
__destruct()
__toString()
將一個對象轉化成字串時,自動調用 echo 對象