为什么我应该使用关键字public
来声明类属性(变量)或方法(函数),如果它们默认为公共的?或者,他们?PHP类为什么使用public关键字?
要不同地说我的问题,public
多余?我理解private
和protected
,但是为什么如果班级成员公开,则为什么要声明public
?
为什么我应该使用关键字public
来声明类属性(变量)或方法(函数),如果它们默认为公共的?或者,他们?PHP类为什么使用public关键字?
要不同地说我的问题,public
多余?我理解private
和protected
,但是为什么如果班级成员公开,则为什么要声明public
?
是,public
是默认值(请参阅visibility docs)。
人们添加它,所以它符合所有其他方法/属性。
此外,如果你想声明一个属性公开,并不想使用public
,你将需要使用var
,这是不推荐的,并可能会在某个时候被弃用。
确定它是多余的,因为这是默认的可见性级别。你应该尽可能避免它们。有些人明确添加了public
关键字,以便代码更具可读性。
从php 5.3开始(我想它已经有一段时间了),使用var关键字会引发E_STRICT错误,所以必须使用public来声明对象变量。至于功能,我认为它更多的是一致性的东西。
没有技术理由使用public
但能见度关键字是必需由PSR-2的所有功能,所以如果你想跟着PSR-2,那么你应该使用它:
4.3。方法
可见性必须在所有方法上声明。
https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md#43-methods
躲避什么(谁)时,我可以吗? – Ben 2011-01-13 07:13:41
@Steve:我的意思是你可以忽略输入public public关键字的公共关键字:) – Sarfraz 2011-01-13 07:24:35
@Stve公共关键字。 – Savetheinternet 2011-01-13 07:24:40