What is the difference between public, private, and protected?(公共,私有和受保护之间有什么区别?)
问题描述
何时以及为什么应该在类中使用 public
、private
和 protected
函数和变量?它们有什么区别?
When and why should I use public
, private
, and protected
functions and variables inside a class? What is the difference between them?
例子:
// Public
public $variable;
public function doSomething() {
// ...
}
// Private
private $variable;
private function doSomething() {
// ...
}
// Protected
protected $variable;
protected function doSomething() {
// ...
}
推荐答案
你用:
public
范围以使该属性/方法可在任何地方、对象的其他类和实例中使用.
public
scope to make that property/method available from anywhere, other classes and instances of the object.
private
范围,当您希望您的属性/方法仅在其自己的类中可见时.
private
scope when you want your property/method to be visible in its own class only.
protected
范围,当您想让您的属性/方法在所有扩展当前类(包括父类)的类中可见时.
protected
scope when you want to make your property/method visible in all classes that extend current class including the parent class.
如果不使用任何可见性修饰符,则属性/方法将是公共的.
If you don't use any visibility modifier, the property / method will be public.
更多:(获取全面信息)
- PHP 手册 - 可见性
这篇关于公共,私有和受保护之间有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:公共,私有和受保护之间有什么区别?


- SoapClient 设置自定义 HTTP Header 2021-01-01
- PHP Count 布尔数组中真值的数量 2021-01-01
- 如何定位 php.ini 文件 (xampp) 2022-01-01
- 从 PHP 中的输入表单获取日期 2022-01-01
- Oracle 即时客户端 DYLD_LIBRARY_PATH 错误 2022-01-01
- 正确分离 PHP 中的逻辑/样式 2021-01-01
- 带有通配符的 Laravel 验证器 2021-01-01
- Laravel 仓库 2022-01-01
- 没有作曲家的 PSR4 自动加载 2022-01-01
- Mod使用GET变量将子域重写为PHP 2021-01-01