资讯专栏INFORMATION COLUMN

PHP面向对象之静态与非静态的调用方式 小结

kk_miles / 1941人阅读

摘要:对于属性来说类内部的调用方式静态属性是类的属性普通属性是类具体实例化出的对象的属性所以二者是完全不同的调用方式也非常不同静态属性静态属性名类名静态属性名普通属性普通属性名类外部的调用方式静态属性是类的属性普通属性是类具体实例化出的对象的属

对于 属性 来说 类内部的调用方式

静态属性的属性

普通属性类具体实例化出的对象的属性

所以二者是完全不同的, 调用方式也非常不同

静态属性 self::$静态属性名类名::$静态属性名

普通属性 $this->普通属性名

类外部的调用方式

静态属性的属性

普通属性类具体实例化出的对象的属性

所以二者是完全不同的, 调用方式也非常不同

静态属性 类名::$静态属性名

普通属性 实例化对象->普通属性名

对于 方法 来说

对于方法, 无论 普通还是静态, 它们都是属于类的, 所以理论上, 它们的调用方式 ->/:: 是可以互换的, 但事实上, 还是应该严格区分, 否则可能会报 Deprecated...;

类内部的调用方式

普通方法 可以使用 $this->普通方法名() 来进行调用;

也可以使用 self::$普通方法名()

静态方法 可以使用 self::$静态方法名() / 类名::$静态方法名() 来进行调用;

也可以使用 $this->$静态方法名()

即类内部 普通方法静态方法 的调用方式可以互换;

类外部的调用方式

普通方法 可以使用 实例化对象->普通方法名() 来进行调用;

注意: 使用 类名::普通方法名() / 实例化对象::普通方法名() 都会报 Deprecated:非静态方法不应该按照镜头盖方法的调用方式来使用

静态方法 可以使用 类名::$静态方法名() 来进行调用;

注意:静态方法也可以使用 实例化对象->普通方法名() 来进行调用; (静态属性不可以)

静态/非静态方法中的调用权限

静态方法中只能使用 静态调用方式::来调用 静态属性, 静态方法, 非静态方法; 不能使用::调用非静态属性;

非静态普通方法中可以调用 静态/非静态属性/方法;

小结

静态属性/方法, 只能通过 :: 来访问;

普通属性只能通过 -> 来访问;

普通方法能通过 ->/:: 来访问; (类外部只能通过->)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/28642.html

相关文章

  • php中static静态属性和静态方法调用

    摘要:本文介绍面向对象中静态属性和静态方法的调用实例分析了静态属性和静态方法的原理与调用技巧需要的朋友可以参考下。简介这里分析了面向对象中静态属性和静态方法的调用。因为静态属性存放的位置是在类里,调用方法为类名属性名静态方法不需要实例化即可调用。 本文介绍php面向对象中static静态属性和静态方法的调用,实例分析了static静态属性和静态方法的原理与调用技巧,需要的朋友可以参考下。 简...

    Flands 评论0 收藏0
  • SegmentFault 技术周刊 Vol.32 - 七夕将至,你对象”还好吗?

    摘要:很多情况下,通常一个人类,即创建了一个具体的对象。对象就是数据,对象本身不包含方法。类是相似对象的描述,称为类的定义,是该类对象的蓝图或原型。在中,对象通过对类的实体化形成的对象。一类的对象抽取出来。注意中,对象一定是通过类的实例化来的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 马上就要到七夕了,离年底老妈老爸...

    Lyux 评论0 收藏0
  • SegmentFault 技术周刊 Vol.32 - 七夕将至,你对象”还好吗?

    摘要:很多情况下,通常一个人类,即创建了一个具体的对象。对象就是数据,对象本身不包含方法。类是相似对象的描述,称为类的定义,是该类对象的蓝图或原型。在中,对象通过对类的实体化形成的对象。一类的对象抽取出来。注意中,对象一定是通过类的实例化来的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 马上就要到七夕了,离年底老妈老爸...

    AaronYuan 评论0 收藏0
  • SegmentFault 技术周刊 Vol.32 - 七夕将至,你对象”还好吗?

    摘要:很多情况下,通常一个人类,即创建了一个具体的对象。对象就是数据,对象本身不包含方法。类是相似对象的描述,称为类的定义,是该类对象的蓝图或原型。在中,对象通过对类的实体化形成的对象。一类的对象抽取出来。注意中,对象一定是通过类的实例化来的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 马上就要到七夕了,离年底老妈老爸...

    李昌杰 评论0 收藏0
  • PHP经验总结 - 聊聊面向对象

    摘要:例如汽车这个名词可以理解为汽车的总类,但这辆宝马汽车则是一个具体的汽车对象。当在类成员方法内部调用的时候,可以使用伪变量调用当前对象的属性。在面向对象中则被称之为方法。 简述 现在大伙都在讲面向对象编程,但是我们也得先找着一个对象是不?不然怎么面向对象?怎么编程? --- 笑话一则,但是理不亏,要搞P面向对象编程,我们起码要先搞懂对象(还有类)是什么?只有了解它,理解它,你才能驾驭它。...

    lpjustdoit 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<