PHP物件導向 屬性案例

2021-09-25 22:56:31 字數 1613 閱讀 5862

class employee  

} class manager extends employee

} $emp = new employee();

echo "普通員工的工資是 " . $emp->getsal();

echo "

";

$manager = new manager();

var_dump($manager);

echo "經理的工資是: " . $manager->getsal();

var_dump($manager);

例項化employee結果:

普通員工的工資是 4200

例項化manager

列印manager物件:

object(manager)[2]

protected 'sal'

=>

int3000

呼叫manager getsal()方法:

4200//返回值

4200

經理的工資是: 5700//呼叫物件的屬性,進行開工資,物件的屬性此時就是父類的屬性(子類沒有對父類屬性進行重寫),此時因為呼叫父類的getsal()方法sal變為4200,呼叫時就是父類的屬性值,再加上1500,就變為5700.

列印manager物件:

object(manager)[2]

protected 'sal'

=>

int5700

如果子類對父類屬性進行重寫

class employee  

} class manager extends employee

} $emp = new employee();

echo "普通員工的工資是 " . $emp->getsal();

echo "

";

$manager = new manager();

var_dump($manager);

echo "經理的工資是: " . $manager->getsal();

var_dump($manager);

別的沒有變化就是對屬性進行了重寫:

例項化employee結果:

普通員工的工資是 4200

例項化manager:

列印manager物件:

object(manager)[2]

protected 'sal'

=>

int3001

呼叫manager getsal()方法:

4201//屬性,屬性離不開物件,提屬性必須說是哪個物件的屬性!!!,此物件的屬性為3001所以加1200為4201

//所以當呼叫父類的方法時,用的是重寫時的屬性值,($this->sal呼叫的值為物件的屬性值),

4201

經理的工資是: 5701

列印manager物件:

object(manager)[2]

protected 'sal'

=>

int5701

物件導向 屬性

資料屬性 configurable 能否通過delete刪除屬性而重新定義屬性,或能否把屬性修改為訪問器屬性。預設為 true。enumerable 能否通過for in迴圈返回屬性。預設為 true。writable 能否修改屬性的值。預設為 true。value 包含這個屬性的資料值。讀取屬性值...

物件導向學習案例

修乙個房子 位址 戶型 總面積 貼地板 占地面積 每貼一塊地板 房子的面積會減少乙個地板的面積 兩個類乙個貼地板的方法 房子的總面積 占地面積 剩餘面積 房子裡面有多少地板 屬性 簡單的類 被使用的類通常先開發 class floor object 地板類 def init self,name,mi...

python物件導向案例

小結 格式化字串需要注意 傳入的引數以及返回值 oop2.py 需求 房子 house 有 戶型 總面積 和 家具名稱列表 新房子沒有任何的家具 家具 houseitem 有 名字 和 占地面積,其中 席夢思 bed 占地 4 平公尺 衣櫃 chest 占地 2 平公尺 餐桌 table 占地 1....