前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【基础】PHP中的public,private,protected

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

作者头像
用户8568307
发布2022-03-14 14:58:21
2770
发布2022-03-14 14:58:21
举报
文章被收录于专栏:PHP全栈技术PHP全栈技术

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:

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PHP全栈技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • public:表示全局,类内部外部子类都可以访问
  • private:表示私有,只有本类内部可以访问
  • protected:表示受保护的,只有本类或者子类中可以访问
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档