private、public、protected的区别详解

 我来答
天罗网17
2022-06-13 · TA获得超过6190个赞
知道小有建树答主
回答量:306
采纳率:100%
帮助的人:73.2万
展开全部

先简单粗俗的描述下:

再啰嗦的解释下:

一、

public: 公有类型

在子类中可以通过 self::属性名(或方法名) 调用public方法或属性,parent::方法名 调用父类方法

在实例中可以能过 $obj->属性名(或方法名) 来调用 public类型的方法或属性

protected: 受保护类型

在子类中可以通过 self::属性名(或方法名) 调用protected方法或属性,parent::属性名(或方法名) 调用父类方法。

<a style='color:red'>在实例中不能通过 $obj->属性名(或方法名) 来调用 protected类型的方法或属性</a>

private: 私有类型
该类型的属性或方法只能在该类中使用,

<a style='color:red'>在该类的实例、子类中、子类的实例中都不能调用私有类型的属性和方法</a>

二、

self 和parent 的区别
a).在子类中常用到这两个对像。他们的主要区别在于self可以调用父类中的公有或受保护的属性,但parent不可以调用

b).self:: 它表示当前类的静态成员(方法和属性)与 this是指当前对像

直接上一示例:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
亚果会
2024-04-11 广告
Goma Greens是一家专注于提供高品质有机蔬果的企业。我们致力于为消费者带来新鲜、健康、无污染的食材,以满足现代人对健康生活的追求。我们的产品均来自精心挑选的有机农场,通过严格的品质控制,确保每一份食材都达到最高标准。此外,我们还提供... 点击进入详情页
本回答由亚果会提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式