PHP 中类方法的默认可见性

2022-08-30 07:02:19

我看了看手册,但我似乎找不到答案。

对于没有可见性声明的方法,PHP 中的默认可见性是多少?PHP是否具有像Java中那样的包可见性?

例如,在下面的代码中,是公共的还是私有的?go()

class test {
  function go() {
  }
}

我问的原因是,我见过许多构造函数代码编写为.,有些则编写为.它们是等效的吗?function __construct()public function __construct()


答案 1

默认值为公共。

类方法可以定义为公共、私有或受保护。声明没有任何显式可见性关键字的方法被定义为 public。

http://www.php.net/manual/en/language.oop5.visibility.php


答案 2

默认值为公共。最好始终包含它,但是 PHP4 支持的类没有访问修饰符,因此在遗留代码中看不到它们的用法是很常见的。

不,PHP没有包可见性,主要是因为直到最近PHP还没有包。


推荐