PHP 封装2025年5月14日 | 阅读 4 分钟 在 PHP 中,封装是一个概念,我们将所有数据和成员函数封装在一起形成一个对象。将数据成员和方法封装成一个单一的单元称为封装。它还允许一个类更改其内部实现,而不影响系统的整体功能。 它有助于保护数据和代码免受外部干扰。PHP 使用访问控制关键字 public、private 和 protected 来实现封装。 封装原则以下图表展示了面向对象编程方法中的封装概念。 ![]()
访问修饰符用于面向对象编程,主要用于 private 和 public 成员与类外部代码交互的方式,如上图所示。 私有数据只能由类本身访问。红色“X”表示私有成员不能由类外部的代码直接访问。 通过对象引用,公共函数可以从类外部访问。私有信息的安全访问通常通过公共函数实现。封装是面向对象编程的基本原则之一,它通过明显地向公众隐藏私有特性来实现。 公共PHP 默认将类成员(包括成员变量和成员函数)设置为 public。 示例输出 Title: PHP Basics | Price: 380 私有如前所述,为了遵守封装概念,成员变量不得立即访问。数据成员应该只能访问这些方法。因此,我们必须使方法为 public,成员变量为 private。 示例输出 Title: PHP Basics Price: 380 最后一行,echo "Title : $b1->title Price: $b1->price"; 这将导致一个致命错误,因为 title 和 price 是 private 的,并且您试图直接从类外部访问它们,这是不允许的。 Protected在类继承的情况下,授予类成员 protected 访问权限的影响是有效的。我们知道 private 成员无法从任何位置访问类,但 public 成员可以从任何位置访问它。 在允许访问相同类及其派生类的对象的同时,protected 关键字会阻止访问任何其他环境。 在 Book 类示例中,让我们将 title 成员设置为 protected,同时将 price 保持为 private。 由于对象属于同一类,PHP 允许访问两个成员变量。 应该添加一个继承 Book 类的 mybook 类。 由于子类继承了父类的 public 和 protected 成员,因此其对象仍然可以访问成员变量。 然而,构建一个 getmytitle() 函数,该函数尝试访问 Book 类的 protected title 成员字段,并将 mybook 类作为一个独立的类(不是 Book 类的扩展)。 由于 getmytitle() 函数尝试打印 Book 对象的 title,因此会引发一条错误消息,显示无法访问受保护的属性 Book::$title。 示例输出 Fatal error: Uncaught Error: Cannot access protected property Publication::$name 下一个主题PHP 中的访问修饰符 |
析构函数是一种特殊函数,用于在不再需要对象时清理或释放资源。虽然它补充了构造函数的工作,但在 PHP 类中声明析构函数是可选的。但是,建议声明...
阅读 4 分钟
在学习 PHP 类之前,我们需要首先理解面向对象编程(也称为 OOPs)的概念。与 C++、JAVA 等其他编程语言不同,PHP 也支持面向对象编程的概念。PHP 面向对象编程 (OOP) 这是一种编程概念,其中...
阅读 10 分钟
Java 或 C++ 中的重载意味着一个类可以拥有许多同名但参数和/或返回类型不同的类方法。但在 PHP 中,重载的含义有所不同。它是一种允许动态创建方法并...的功能
阅读 4 分钟
多态性源自希腊语 Poly(意为多)和 morphism(意为重要结构)。多态性是描绘面向对象编程(也称为 OOPs)模型的四个支柱之一。它是一种支持类多种...
阅读9分钟
PHP 将“public”、“private”和“protected”称为“访问修饰符”。这些关键字控制类属性和方法的可见性或可访问性。在声明成员变量和指定成员函数时,会加上这些术语之一作为前缀。PHP 的访问修饰符这些关键字决定了...
7 分钟阅读
什么是变量?程序中的变量用于存储值或数据,这些值或数据可以在代码稍后重用。可以将它们视为数字、字符、字符串、内存地址等的容器。PHP 具有自己特定的声明和使用规则...
阅读 4 分钟
PHP 中抽象类和接口的区别 抽象类可以包含抽象和非抽象方法,但接口只能包含抽象方法。接口是实现的,而抽象类是扩展的。抽象类和接口之间有很多区别……
阅读 4 分钟
教程 编译器 程序 OOPs 函数 面试题(面向对象编程)面向对象编程 (OOP) 是一种以对象而非操作、以数据而非逻辑为中心的编程模型。在 OOP 中,我们创建……
阅读 8 分钟
简单来说,类型提示意味着向函数提供提示,使其仅接受给定的数据类型。类型提示是一种允许我们使函数接受所需数据类型的技术。PHP 在属性或实例...时允许使用“类型提示”
阅读 3 分钟
在 PHP 中,接口用作类的模板,就像类是其对象的模板一样。它类似于类,但不能包含任何实际代码或非抽象方法。它用于定义方法名称和...
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India