str; } } class s extends f { public $str = "abc"; } $s = new s(); $s->fun(); 输出:">
输入banner图图片脚本导航/分类

关于继承的1点疑惑,希望大家可以帮帮忙

关于继承的一点疑惑,希望大家可以帮帮忙!
class f {
private $str = "123";
public function fun() {
echo $this->str;
}
}

class s extends f {
public $str = "abc";
}

$s = new s();
$s->fun();
输出:123


class f {
public $str = "123";
public function fun() {
echo $this->str;
}
}

class s extends f {
public $str = "abc";
}

$s = new s();
$s->fun();
输出:abc

第一个的输出很疑惑,为什么会输出父类的属性值?麻烦大家给我分析分析内存,有图说明更好,谢谢大家了。

分享到: 更多


------解决方案--------------------
私有属性不会被继承
私有属性只能用定义它的类的方法访问
------解决方案--------------------
刚才百度了一下,明白了 嘿嘿 你看下 这句话
如果父类有私有的属性。那么父类的方法只为父类的私有属性服务。