【基础】PHP中的public,private,protected

2022-03-14 14:58:21 浏览数 (1)

public:表示全局,类内部外部子类都可以访问

private:表示私有,只有本类内部可以访问

protected:表示受保护的,只有本类或者子类中可以访问

示例:

代码语言:javascript复制
class Man{
    private $name = '周伯通';
    protected $money = 300;
    public $age = 30;

    public function say(){
        echo '我叫'.$this->name.'<br/>';
        echo '我有钱'.$this->money.'<br/>';
        echo '我年龄'.$this->age.'<br/>';
    }
}

class Stu extends Man{
    private $firend = '小白';
    public function talk(){
        echo '我叫'.$this->name.'<br>'; //报错,因为name是private类型,只能在它的本类中访问
        echo '我有'.$this->money.'<br>';
        echo '我今年'.$this->age.'<br>';
    }
}

$man = new Man();
echo $man->name.'<br>';    //报错,因为name 类型是private,只能在他本类中访问
echo $man->money.'<br>';   //报错,因为money 类型是protected,只能在他本类和子类中访问
echo $man->age.'<br>';

$ming = new Stu();
echo $ming->name.'<br>';      //报错,name 是private 类型
echo $ming->money.'<br>';      //报错 因为money是 protected 类型,只能在它本类和子类中访问
echo $ming->age.'<br>';
echo $ming->firend.'<br>'; //报错,因为firend是private类型,只能在它本类中访问
echo $ming->talk().'<br>';

ps:

用的技术有偏差,所以有的同学的提问我可能也回答不上来

0 人点赞