php中访问控制_PHP中的访问控制 - Wujilin Studio - OSCHINA - 中文开源技术交流社区

PHP中的访问控制符有三种:public,protected和private。

注:打勾表示可以在该位置上,可以访问修饰符修饰的类成员。访问是通过使用类名/类对象来访问的。

对于protected修饰符而言,

1)子类继承了父类中protected修饰的成员;

2)子类中可以定义父类对象或使用父类名来访问protected修饰的成员。

举例说明:

class Person {

private $_name;

protected static $CITY = "Xiamen";

protected $age = 22;

public function __construct($name) {

$this->_name = $name;

}

protected function getName() {

return $this->_name;

}

protected function getCountry() {

return "China";

}

}

class Student extends Person {

public function getInfo() {

$p = new Person("myName");

echo "继承了protected修饰的\$age成员属性:".$this->age."。
";

echo "继承了protected修饰的getCountry()成员方法:".$this->getCountry()."。
";

echo "通过父类对象调用了protected修饰的getName()实例方法:".$p->getName()."。
";

echo "通过父类名访问protected修饰的\$CITY静态属性:".Person::$CITY."。
";

}

}

$s = new Student();

echo $s->getInfo();

/* 输出:

继承了protected修饰的$age成员属性:22。

继承了protected修饰的getCountry()成员方法:China。

通过父类对象调用了protected修饰的getName()实例方法:myName。

通过父类名访问protected修饰的$CITY静态属性:Xiamen。

*/

?>

注意:

1)父类中的private修饰的成员不会被子类继承;

2)类对象是可以访问类的静态成员的,如:$this::$CITY。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值