protect方法
<?php
class Car {
? ? private $speed = 0;
? ??
? ? public function getSpeed() {
? ? ? ? return $this->speed;
? ? }
? ??
? ? protected function speedUp() {
? ? ? ? $this->speed += 10;
? ? }
? ??
? ? //增加start方法,使他能夠調(diào)用受保護(hù)的方法speedUp實(shí)現(xiàn)加速10
? ? public function start(){
? ? ? ? $this->speedUp();
? ? }
}
$car = new Car();
$car->start();
echo $car->getSpeed();
這里的speedUp不是已經(jīng)定義為protected了嗎?怎么還能在外部調(diào)用echo $car->getSpeed();
2016-03-23
看上面那句 //增加start方法,使他能夠調(diào)用受保護(hù)的方法speedUp實(shí)現(xiàn)加速10
start()方法是public的,$car->start()調(diào)用的start()方法 ,
start()方法里邊$this->speedUp(),這個(gè)在類的內(nèi)部是可以調(diào)用speedUp()方法
2016-03-23
protected表示受保護(hù)的,只有本類或子類或父類中可以訪問;speedUp()還是在本類$car中