Maison >développement back-end >tutoriel php > 关于php承袭的疑惑

关于php承袭的疑惑

WBOY
WBOYoriginal
2016-06-13 13:16:37836parcourir

关于php继承的疑惑

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php class A {
    [color=#FF0000]private[/color] $name = "Nciaer";

    public function say() {
        echo $this -> name . "<br>";
    }
}

class B extends A {
    public $name = "Fansa";

}

$b = new B();
$b -> say();
?>


输出结果:
Nciaer
----------------------------

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php class A {
    [color=#FF0000]public[/color] $name = "Nciaer";

    public function say() {
        echo $this -> name . "<br>";
    }
}

class B extends A {
    public $name = "Fansa";

}

$b = new B();
$b -> say();
?>



输出结果:
Fansa


为什么父类变量$name为public的时候,$b调用成员方法say()输出子类的$name;
当父类变量$name为private时,$b调用成员方法say()输出父类的$name;

------解决方案--------------------
private 私有的
怎么能被继承呢?
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn