靜態屬性和靜態方法
阿新 • • 發佈:2020-09-10
1.概述
- static修飾的屬性和方法
- 靜態屬性和靜態方法是類的屬性和方法,與類相關,與物件無關
- 類的東西(靜態屬性,靜態方法,類常量),通過" 類名:: "來呼叫
- 靜態屬性和靜態方法都可以加許可權控制符,類常量沒有
2.self關鍵字使用
- $this是指向當前物件的指標,self是指向當前類的指標。
- $this用來呼叫物件的方法和屬性
- self用來呼叫類常量,靜態屬性,靜態方法
- $this只能在成員方法中使用
- self可以在成員方法和靜態方法使用
提示:物件可以呼叫:成員屬性,成員方法,靜態方法
self可以呼叫:類常量,靜態屬性,靜態方法,成員方法
3.值傳遞和引用傳遞
- 值傳遞就是將一個變數的資料或值,複製一份,傳遞給另一個變數(字串,整型,浮點型,布林型,陣列,NULL)
- 引用傳遞就是將一個變數的 “資料地址”複製一份,傳遞給另一個變數(物件和資源)
- 其他型別變數使用引用傳遞,需要在引用的變數前加"&"符號即可。&加在等號右邊
<?php $a=10; $b=&$a; $a=20; echo "a的值是:".$a. "<br>"; echo "b的值是:".$b. "<br>"; ?>
4.類的三大特性
- 封裝性 在專案中,屬性基本都是私有的,通過公有的方法對私有的屬性進行賦值和取值,
- 繼承性 php只能單繼承
- 多型性 主要指方法過載和方法重寫, php只支援方法重寫(要與父類的方法名,形參個數,方法型別一致和不低於父類的訪問許可權)
- 注意:對於重寫構造方法比較特殊,沒有要求形參個數
parent關鍵字
self代表當前類,parent代表父類
self和parent都使用範圍解析符“::”來呼叫其他內容
繼承的語法格式
方法重寫的要求