是否严格需要确定类函数是否是公共的?

  • 本文关键字:是否是 类函数 是否 php oop
  • 更新时间 :
  • 英文 :


通过其他人的源代码,我注意到有些人专门将公共函数定义为类中的public。我知道类变量需要这个定义,但 PHP 声明定义方法的可见性是可选的,[Class methods may be defined as public, private, or protected. Methods declared without any explicit visibility keyword are defined as public.]。

将函数专门定义为公共函数而不是让 PHP 假设它是公共的有什么好处吗?

不是每个人都知道给定语言功能的默认可见性是什么。例如,在C++中,结构和类本质上是相同的,其中结构成员和公共默认情况下是私有的,而类默认是私有的 - 这不会阻止人们指定它们是什么。

通过明确说明给定功能的可见性,不会对此造成混淆。这允许人们更快地阅读和消化代码,对那些不熟悉默认可见性的人特别有用。

定义属性或方法的公共可见性没有编程优势。

但是在代码样式方面有很大的优势。PHP 的初学者可能不知道函数默认是公共的。此外,始终为函数添加可见性也是有意义的,否则私有/受保护函数和公共函数有不同的代码样式。

这甚至被考虑在内psr-2,这迫使您为所有方法和属性添加可见性。

最新更新