PHP 类的继承
PHP 类的继承是指建立一个新的派生类,从一个或多个先前定义的类中继承数据和方法,而且可以重新定义或加进新数据和方法,从而建立了类的层次或等级。
我们称已存在的用来派生新类的类为父类,由已存在的类派生出的新类为子类。继承是面向对象的三大特性之一。
通过继承机制,可以利用已有的数据类型来定义新的数据类型。所定义的新的数据类型不仅拥有新定义的成员,而且还同时拥有旧的成员。
注意:不同于 Java 等语言,在 PHP 中,一个类只能直接从一个类中继承数据,即单继承。
使用 extends 关键字来定义类的继承:
class 子类 extends 父类{ }
例子:
<?php class Person { var $name; var $age; function say() { echo "我的名字叫:".$this->name."<br />"; echo "我的年龄是:".$this->age; } } // 类的继承 class Student extends Person { var $school; //学生所在学校的属性 function study() { echo "我的名子叫:".$this->name."<br />"; echo "我正在".$this->school."学习"; } } $t1 = new Student(); $t1->name = "张三"; $t1->school = "人民大学"; $t1->study(); ?>
运行该例子,输出:
我的名子叫:张三 我正在人民大学学习
在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。
本章节内容共分 17 部分:
- PHP 类与对象
- PHP 类的继承 extends 关键字
- PHP 构造方法 __construct()
- PHP 特殊方法 __set()、__get()、__isset() 与 __unset()
- PHP 类的静态成员属性与静态方法 static 关键字
- PHP 抽象方法与抽象类 abstract 关键字
- PHP 类的访问控制与封装 public,protected,private 修饰符
- PHP 对象克隆 clone 关键字与 __clone() 方法
- PHP 类的接口 interface 与 implements 关键字
- PHP 自动加载类 __autoload() 方法
- PHP 对象的存储与传输(序列化 serialize 对象)
- PHP 重载
- PHP final 关键字
- PHP 析构方法 __destruct()
- 范围解析操作符(::)
- PHP 常量(const)
- PHP 重载方法 __call()