[PHP]访问控制符
            
            
                [php]
<?php
class LovePhp
{
    //子类,本类,外部都能访问修改。
    public function Xphp()
    {
        echo'Xhpp<br />';
    }
    //子类和本类可以访问修改,但是外面不能;
    //Fatal error: Call to protected method LovePhp::Pphp() from context '' in public.php on line 62
    protected function Pphp()
    {
        return 'Pphp<br />';
    }
                            
    //子类和外部都不能访问此方法,因为他的访问控制符是private,但是内部可以调用,见下面Dphp()方法;
    private function Vphp()
    {
        return 'Vphp<br />';
    }
                            
    //调用本类中的私有方法Vphp();
    public function Dphp()
    {
        return $this->Vphp();
    }
                        
}
                        
class Lphp extends LovePhp
{
    //Lphp类中自有方法
    public function Lxphp()
    {
        return 'Lxphp';
    }
                            
    //自由方法,调用父类的Pphp()方法
    public function Hphp()
    {
        return $this->Pphp();
    }
                            
    //自有方法,调用父类的私有方法Vphp();#######这个只做演示,是一段错误代码
    //报错代码:Fatal error: Call to private method LovePhp::Vphp() from context 'Lphp' in public.php on line 37
    public function XXphp()
    {
        return $this->Vphp();
    }
                            
    //创建方法,调用父类的Dphp();
    public function Cphp()
    {
        return $this->Dphp();
    }
}
                        
    $obj = new Lphp();
    $obj->Xphp();
    echo $obj->Hphp();
    echo $obj->Cphp();
                        
    $obj2 = new LovePhp();
    echo $obj2->Pphp();
?>
[/php]
总结:public 默认没有访问控制符的就是此public。public修饰的方法,属性,在外部,子类,本类中都可以访问,修改。
protected 受局部保护的方法,属性;protected修饰的方法,属性,能在本类,子类中访问修改;
private 私有方法,只能在本类中调用,修改;
文章转载自:http://blog.9696e.com/php/oop-protected-private-public