《PHP編程:分享下php5類(lèi)中三種數(shù)據(jù)類(lèi)型的區(qū)別》要點(diǎn):
本文介紹了PHP編程:分享下php5類(lèi)中三種數(shù)據(jù)類(lèi)型的區(qū)別,希望對(duì)您有用。如果有疑問(wèn),可以聯(lián)系我們。
public: 公有類(lèi)型
在子類(lèi)中可以通過(guò)self::var 來(lái)調(diào)用 public類(lèi)型的辦法或?qū)傩浴】梢酝ㄟ^(guò)parent::method 來(lái)調(diào)用父類(lèi)中的辦法
在實(shí)例中可以能過(guò)$obj->var 來(lái)調(diào)用 public類(lèi)型的辦法或?qū)傩?span id="im1cbna6vd" class="showhide">PHP編程
protected: 受保護(hù)類(lèi)型
在子類(lèi)中可以通過(guò)self::var 來(lái)調(diào)用 protected類(lèi)型的辦法或?qū)傩浴】梢酝ㄟ^(guò)parent::method 來(lái)調(diào)用父類(lèi)中的辦法
在實(shí)例中不能通過(guò)$obj->var 來(lái)調(diào)用 protected類(lèi)型的辦法或?qū)傩?span id="im1cbna6vd" class="showhide">PHP編程
private: 私有類(lèi)型
該類(lèi)型的屬性或辦法只能在該類(lèi)中使用,在該類(lèi)的實(shí)例、子類(lèi)中、子類(lèi)的實(shí)例中都不能調(diào)用私有類(lèi)型的屬性和辦法PHP編程
2.self 和 parent 的區(qū)別
a).在子類(lèi)中常用到這兩個(gè)對(duì)像.他們的主要區(qū)別在于self可以調(diào)用父類(lèi)中的公有或受保護(hù)的屬性,但parent不可以調(diào)用PHP編程
b).self:: 它表示當(dāng)前類(lèi)的靜態(tài)成員(辦法和屬性) 與 $this 不同,$this是指當(dāng)前對(duì)像PHP編程
附代碼:
PHP編程
<?php /** * parent 只能調(diào)用父類(lèi)中的公有或受保護(hù)的辦法,不能調(diào)用父類(lèi)中的屬性 * self 可以調(diào)用父類(lèi)中除私有類(lèi)型的辦法和屬性外的所有數(shù)據(jù) */ class User{ public $name; private $passwd; protected $email; public function __construct(){ //print __CLASS__." "; $this->name= 'simple'; $this->passwd='123456'; $this->email = 'bjbs_270@163.com'; } public function show(){ print "good "; } public function inUserClassPublic() { print __CLASS__.'::'.__FUNCTION__." "; } protected function inUserClassProtected(){ print __CLASS__.'::'.__FUNCTION__." "; } private function inUserClassPrivate(){ print __CLASS__.'::'.__FUNCTION__." "; } } class simpleUser extends User { public function __construct(){ //print __CLASS__." "; parent::__construct(); } public function show(){ print $this->name."http://public "; print $this->passwd."http://private "; print $this->email."http://protected "; } public function inSimpleUserClassPublic() { print __CLASS__.'::'.__FUNCTION__." "; } protected function inSimpleUserClassProtected(){ print __CLASS__.'::'.__FUNCTION__." "; } private function inSimpleUserClassPrivate() { print __CLASS__.'::'.__FUNCTION__." "; } } class adminUser extends simpleUser { protected $admin_user; public function __construct(){ //print __CLASS__." "; parent::__construct(); } public function inAdminUserClassPublic(){ print __CLASS__.'::'.__FUNCTION__." "; } protected function inAdminUserClassProtected(){ print __CLASS__.'::'.__FUNCTION__." "; } private function inAdminUserClassPrivate(){ print __CLASS__.'::'.__FUNCTION__." "; } } class administrator extends adminUser { public function __construct(){ parent::__construct(); } } /** * 在類(lèi)的實(shí)例中 只有公有屬性和辦法才可以通過(guò)實(shí)例化來(lái)調(diào)用 */ $s = new administrator(); print '-------------------'; $s->show(); ?>
維易PHP培訓(xùn)學(xué)院每天發(fā)布《PHP編程:分享下php5類(lèi)中三種數(shù)據(jù)類(lèi)型的區(qū)別》等實(shí)戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/12516.html