課程
/后端開發(fā)
/PHP
/PHP進(jìn)階篇
求大神把每一行代碼解釋一遍
2017-04-18
源自:PHP進(jìn)階篇 2-7
正在回答
首先我新手,我也不知道我自己所理解的是對是錯.?
<?php
class Car { ?//定義個類
? ? private $speed = 0; ? // private ?定義個受保護(hù)的屬性$speed;
? ??
? ? public function getSpeed() { ?// pubulic ?定義個公共的方法 ?getspeed;外部可以訪問該方法;
? ? ? ? return $this->speed; ?
? ? }
? ? protected function speedUp() { ? //這是個受保護(hù)的方法 speedup,外部無法訪問該方法;
? ? ? ? $this->speed += 10; ??
? //由于上面speedUp方法是受保護(hù)的,在外部無法訪問,?
//于是增加下面start的公共方法,這個方法的用處就是來調(diào)用speedup方法讓$speed增加10;
? ? public function start(){ ? //外部可以訪問該方法;
? ? ?$this->speedUp(); ??
}
$car = new Car();
$car->start(); //調(diào)用了內(nèi)部公共方法 start, start方法里調(diào)用speedup;使$speed的值加10;
echo $car->getSpeed(); //調(diào)用了內(nèi)部的getSpeed方法,返回了$speed的值; 所以輸出是10..
class Car {
? ? public $name = 'car';
? ? //共有車 名字 車
? ? public function __clone() {//調(diào)用克隆
? ? ? ? $obj = new Car(); //創(chuàng)建新對象OBJ
? ? ? ? $obj->name = $this->name; //obj.name = Car.name
$a = new Car(); //創(chuàng)建A對象 ?屬于CAR類
$a->name = 'new car'; //A的名字是 new car?
$b = clone $a; // 定義B 變量 克隆A 對象
if ($a == $b) echo '=='; ? //true
if ($a === $b) echo '==='; //false
$str = serialize($a); //對象序列化成字符串
echo $str.'<br>'; 輸出
$c = unserialize($str); //反序列化為對象
var_dump($c); //判斷類型
舉報
輕松學(xué)習(xí)PHP中級課程,進(jìn)行全面了解,用PHP快速開發(fā)網(wǎng)站程序
3 回答【求大神解釋】
3 回答大神給每一句注釋一下哈
5 回答大神們 求解釋?。。。?/p>
4 回答求老師、大神 解釋
2 回答哪位大神可 把珠、這段代碼詳細(xì)解說一下。
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-04-20
首先我新手,我也不知道我自己所理解的是對是錯.?
<?php
class Car { ?//定義個類
? ? private $speed = 0; ? // private ?定義個受保護(hù)的屬性$speed;
? ??
? ? public function getSpeed() { ?// pubulic ?定義個公共的方法 ?getspeed;外部可以訪問該方法;
? ? ? ? return $this->speed; ?
? ? }
? ??
? ? protected function speedUp() { ? //這是個受保護(hù)的方法 speedup,外部無法訪問該方法;
? ? ? ? $this->speed += 10; ??
? ? }
? ??
? //由于上面speedUp方法是受保護(hù)的,在外部無法訪問,?
//于是增加下面start的公共方法,這個方法的用處就是來調(diào)用speedup方法讓$speed增加10;
? ? public function start(){ ? //外部可以訪問該方法;
? ? ?$this->speedUp(); ??
? ? }
}
$car = new Car();
$car->start(); //調(diào)用了內(nèi)部公共方法 start, start方法里調(diào)用speedup;使$speed的值加10;
echo $car->getSpeed(); //調(diào)用了內(nèi)部的getSpeed方法,返回了$speed的值; 所以輸出是10..
2017-04-18
<?php
class Car {
? ? public $name = 'car';
? ? //共有車 名字 車
? ? public function __clone() {//調(diào)用克隆
? ? ? ? $obj = new Car(); //創(chuàng)建新對象OBJ
? ? ? ? $obj->name = $this->name; //obj.name = Car.name
? ? }
}
$a = new Car(); //創(chuàng)建A對象 ?屬于CAR類
$a->name = 'new car'; //A的名字是 new car?
$b = clone $a; // 定義B 變量 克隆A 對象
if ($a == $b) echo '=='; ? //true
if ($a === $b) echo '==='; //false
$str = serialize($a); //對象序列化成字符串
echo $str.'<br>'; 輸出
$c = unserialize($str); //反序列化為對象
var_dump($c); //判斷類型