PHP类与对象中的private访问控制的疑问

原创 2019/6/30 15:17:16

在手册中遇到了一个没想明白的问题,记录一下,方便需要的朋友
复制代码 代码如下:

class Bar
{
public function test() {
$this->testPrivate();
$this->testPublic();
}
public function testPublic() {
echo "Bar::testPublic\n";
}
private function testPrivate() {
echo "Bar::testPrivate\n";
}
}
class Foo extends Bar
{
public function testPublic() {
echo "Foo::testPublic\n";
}
private function testPrivate() {
echo "Foo::testPrivate\n";
}
}
$myFoo = new foo();
$myFoo->test(); // Bar::testPrivate
// Foo::testPublic

为啥第一行会输出Bar::testPrivate呢?
一些资料: 
//www.zyiz.net/article/31709.htm
还有php官网上,关于这段代码的贡献者回复中,也找到了一条:
http://www.php.net/manual/zh/language.oop5.visibility.php#87413

上一篇:asp.net 组合模式的一个例子

下一篇:php类中private属性继承问题分析

赞(0)

共有 条评论 网友评论

验证码: 看不清楚?
    扫一扫关注最新编程教程