在 PHP 中,类的修饰符主要分为访问控制修饰符和类特性修饰符。以下是对这些修饰符的介绍,并结合示意图帮助理解。
1. 访问控制修饰符
访问控制修饰符用于控制类的属性和方法的访问权限,PHP 提供了三种访问控制修饰符:public
、protected
和 private
。
1.1 public
(公有)
1.2 protected
(受保护)
- 描述:只能在类的内部和子类中访问,外部无法直接访问。
- 示意图:
1.3 private
(私有)
- 描述:只能在类的内部访问,子类和外部都无法访问。
- 示意图:
2. 类特性修饰符
除了访问控制修饰符,PHP 还提供了其他修饰符来定义类的特性。
2.1 static
(静态)
- 描述:用于定义静态属性或方法。静态成员属于类本身,而不是类的实例,可以通过类名直接访问。
- 示意图:
| 类内部:✔️ |
| 子类:✔️ |
| 类外部:✔️(通过类名访问) |
2.2 final
(最终)
- 描述:用于定义不可被继承的类或不可被重写的类方法。
- 示意图:
| 类内部:✔️ |
| 子类:❌(final 类不能被继承,final 方法不能被重写) |
| 类外部:✔️ |
示例代码
以下是一个简单的 PHP 类示例,展示不同修饰符的使用:
| <?php |
| class MyClass |
| { |
| public $publicProperty = "Public Property"; |
| protected $protectedProperty = "Protected Property"; |
| private $privateProperty = "Private Property"; |
| |
| public function publicMethod() |
| { |
| echo "This is a public method."; |
| } |
| |
| protected function protectedMethod() |
| { |
| echo "This is a protected method."; |
| } |
| |
| private function privateMethod() |
| { |
| echo "This is a private method."; |
| } |
| } |
| |
| class ChildClass extends MyClass |
| { |
| public function accessProtected() |
| { |
| echo $this->protectedProperty; |
| $this->protectedMethod(); |
| } |
| } |
| |
| $myClass = new MyClass(); |
| echo $myClass->publicProperty; |
| $myClass->publicMethod(); |
| |
| |
| |
| |
| |
| |
| ?> |
总结
通过访问控制修饰符,可以实现类的封装,保护类的内部数据和逻辑。而 static
和 final
等修饰符则提供了类的其他特性,例如静态访问和防止继承等。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2024-03-06 Flex布局