首页  >  文章  >  后端开发  >  PHP 中的继承

PHP 中的继承

PHPz
PHPz原创
2024-08-29 12:59:341039浏览

继承是在新创建的类中扩展现有类功能的一种方法。除了扩展基类功能之外,我们还可以向新创建的类添加功能。当我们继承一个类时,我们说继承的类是一个子类(子类),我们从其继承它的子类称为父类。父类也称为基类。这种方式可以更好地管理编程代码和代码可重用性。使用继承背后的想法是为了更好地管理代码和代码可重用性。在本主题中,我们将学习 PHP 中的继承。

广告 该类别中的热门课程 PHP 开发人员 - 专业化 | 8 门课程系列 | 3次模拟测试

开始您的免费软件开发课程

网络开发、编程语言、软件测试及其他

PHP 中的继承类型

PHP支持各种类型的继承,就像JAVA一样。下表显示了 PHP 中继承类型的列表以及支持情况。

Inheritance Type Support in PHP
Single Inheritance YES
Multilevel Inheritance YES
Hierarchical Inheritance YES
Multiple Inheritance NO

1.单一继承

PHP 支持单继承。单继承是 PHP 中的一个概念,其中单个类只能继承一个类。在这个过程之间我们需要有两个类。一个是基(父)类,另一个是子类。让我们通过一个例子来理解这一点。它通常被称为简单继承。 PHP语言中的这种继承方式与JAVA、C++等都是一样的

PHP 中的继承

代码:

<?php
class MyAccess {
var $var = "This is first var";
protected $fist_name;
// simple class method
function returnVar() {
echo $this->fist_name;
}
function set_fist_name($set_this){
$this->fist_name = $set_this;
}
}
class child extends MyAccess {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo $this->fist_name;
}
}
$obj1 = new child();
$obj1->setVal("Jai Shre");
$obj1->getVal();
?>

MyAccess 是父类,子类是子类的名称。

输出:

PHP 中的继承

2.多级继承

PHP 支持多级继承。在这种类型的继承中,我们将有两个以上的类。在这种类型的继承中,父类将被子类继承,然后子类将被子类继承。 PHP 语言中的这种继承类型与 C++ 等语言中的继承类型相同

PHP 中的继承

代码:

<?php
class ParentClass {
var $var = "This is first var";
public $fist_name;
// simple class method
function returnVar() {
echo $this->fist_name;
}
function set_fist_name($set_this){
$this->fist_name = $set_this;
}
}
class child_1 extends ParentClass {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo "Extended By Parent Class -". $this->fist_name;
}
}
class child_2 extends child_1 {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo "Extended By child 1  - ".$this->fist_name;
}
}
$obj1 = new child_1();
$obj1->setVal("This is first inherited class");
$obj1->getVal();
echo "<br/><br/>";
$obj2 = new child_2();
$obj2->setVal("This is second inherited class");
$obj2->getVal();
?>

输出:

PHP 中的继承

3.分层继承

PHP 支持层次继承。分层继承是一种继承类型,其中程序由单个父类和多个子类组成。让我们通过这个例子来理解。 PHP语言中的这种继承方式与JAVA、C++等都是一样的

PHP 中的继承

代码:

<?php
class ParentClass {
var $var = "This is first var";
public $fist_name;
// simple class method
function returnVar() {
echo $this->fist_name;
}
function set_fist_name($set_this){
$this->fist_name = $set_this;
}
}
class child_1 extends ParentClass {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo $this->fist_name;
}
}
class child_2 extends ParentClass {
function setVal($set_this){
$this->fist_name = $set_this." - ".$set_this;;
}
function getVal(){
echo $this->fist_name;
}
}
$obj1 = new child_1();
$obj1->setVal("This is first child class");
$obj1->getVal();
echo "<br/><br/>";
$obj2 = new child_2();
$obj2->setVal("This is second child class");
$obj2->getVal();
?>

输出:

PHP 中的继承

我们有一个名为 ParentClass 的父类和两个子类,分别为 child_1 和 child_2。给定的继承场景称为层次继承。

PHP 中继承的重要性

继承的重要性更加重要,因为它具有巨大的优势。

  • 代码可重用性是继承中最常用的之一;基类在进程之间保持原样。正如我们在上面所有继承的示例中看到的,代码正在从一个类重用到另一个类。我们不需要一次又一次地重写同样的东西。
  • 基类可以被类层次结构中的许多派生类使用。是的,这是一种继承类型,我们可以在父类中进行多重继承的扩展。
  • 可扩展性是继承的优点之一,我们可以扩展基类功能,而无需进行很少的更改或无需更改即可满足业务需求。假设我们只使用一个没有子类的父类。但如果以后有需要,我们可以添加子类来满足我们的业务需求。
  • 重写是继承功能的另一个优点,我们可以将基类函数的定义重写到派生类中,以便根据业务需求进行更改。
  • 更少的代码量——同时,与传统的编码方式相比,我们在进行继承时将使用相对更少的代码。
  • 继承还启用了数据隐藏功能。我们可以使用各种 PHP 访问修饰符将父类中唯一需要的部分公开给子类。
  • 完全支持MVC – 我们可以通过使用继承的概念来实现MVC。

结论

我们应该使用继承来完成我们的业务,因为它与普通代码相比有一些优势。我们在处理继承的时候应该注意数据的安全。我们可以使用 private 和 protected 等访问修饰符来处理数据隐藏和数据安全。 PHP 不支持多重继承。

以上是PHP 中的继承的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
上一篇:Method Overloading in PHP下一篇:PHP now