php物件導向之 延遲繫結複習 132

2021-06-23 07:01:55 字數 942 閱讀 6763

<?php 

/****

燕十八 公益php講堂

論 壇:

微 博:

yy頻道: 88354001

****/

/***

====筆記部分====

***/

class animal

public static function t1()

public static function t2()

} class human extends animal

} class stu extends human

} stu::t1(); //嗚嗚,1,4

stu::t2(); // 嚶嚶,16,2

?>

對於stu:t1()的結果:先在stu類中找t1, 找不到,到human類中找,也沒有,繼續找animal,有t1, 因此繫結了animal                                     類,所以結果應該是

self繫結為animal,因此應該 是 echo $animal::age;   

echo $animal::leg;  

對於stu:t2()的結果:先在stu類中找t2, 找不到,到human類中找,也沒有,繼續找animal,有t2,而此前加的是                                           static,先繫結animal,再繫結stu類,所以結果應該是

self繫結為animal,因此應該 是 echo                                           $animal::leg;   echo $

stu::age 。

(不要問為什麼會這樣,我也不知道,因為php中的執行機制就是這樣)

物件導向PHP之靜態延遲繫結

定義 首先從字面上的意思來理解,靜態 表示該用法是給靜態變數和方法來使用的,延遲繫結 是指在程式執行時而不是編譯時決定的。下面來看看 例項 首先我們定乙個父類 class father 複製 再定義乙個子類 class sonextends father 複製 分別呼叫子類和父類的printname...

php物件導向精要 1

1 靜態屬性與方法 每乙個類的例項擁有自己的屬性和方法,每乙個類也可以包含靜態屬性,靜態屬性不屬於類的任何例項,可以把靜態屬性理解成儲存在類中的全域性變數,可以在任何地方通過類名引用靜態屬性。1 2class myclass 7 89 obj new myclass 10echo obj getva...

php物件導向之轉殖物件

在前面的php物件導向之物件和引用,我們試圖以 b a 的方式複製物件以傳遞物件的值 內容 結果卻是傳遞物件的位址,在結尾為了解決複製物件這個問題,提到了轉殖的方法。接下來講一下php物件導向之轉殖物件。前面我們已經知道,使用傳址引用的方式呼叫物件,實質呼叫的是同乙個物件,有時需要建設立乙個物件的副...