|
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呢?
一些資料:
http://www.jb51.NET/article/31709.htm
還有php官網上,關于這段代碼的貢獻者回復中,也找到了一條:
http://www.php.NET/manual/zh/language.oop5.visibility.php#87413
php技術:PHP類與對象中的private訪問控制的疑問,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。