首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP中类方法的默认可见性

PHP中类方法的默认可见性
EN

Stack Overflow用户
提问于 2010-02-09 03:46:04
回答 3查看 34.7K关注 0票数 128

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

在PHP中,没有可见性声明的方法的默认可见性是什么?PHP有像Java一样的包可见性吗?

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

class test {
  function go() {
  }
}

我问这个问题的原因是,我见过许多构造函数代码被写成function __construct(),还有一些被写成public function __construct()。它们是等价的吗?

EN

回答 3

Stack Overflow用户

发布于 2010-02-09 03:48:26

默认值为public。最好总是包含它,但是PHP4支持没有访问修饰符的类,所以在遗留代码中不使用它们是很常见的。

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

票数 25
EN

Stack Overflow用户

发布于 2010-02-09 03:48:47

默认值为public。原因可能是向后兼容性,因为旧代码希望它是公共的(如果它不是公共的,它将停止工作)。

票数 11
EN

Stack Overflow用户

发布于 2019-01-18 00:01:10

function __construct()public function __construct()使用相同的方法名称。

如果您无法定义方法名称的前缀,则默认情况下它应该是public。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2224380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档