php面向对象全攻略 (七) 继承性

技术教程2个月前发布 北陌
334 00

php面向对象全攻略 (七) 继承性

11.类的继承

继承作为面向对象的三个重要特性的一个方面,在面向对象的领域有着极其重要的作用,

好像没听说哪个面向对象的语言不支持继承。继承是PHP5 面向对象程序设计的重要特性之

一,它是指建立一个新的派生类,从一个或多个先前定义的类中继承数据和函数,而且可以

重新定义或加进新数据和函数,从而建立了类的层次或等级。说的简单点就是,继承性是子

类自动共享父类的数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的

时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为

自己的内容,并加入若干新的内容。比如你现在已经有一个“人”这个类了,这个类里面有

两个成员属性“姓名和年龄”以及还有两个成员方法“说话的方法和走路的方法”,如果现在

程序需要一个学生的类,因为学生的也是人,所以学生也有成员属性“姓名和年龄”以及成

员方法“说话的方法和走路的方法”,这个时候你就可以让学生类来继承人这个类,继承之后,

学生类就会把人类里面的所有的属性都继承过来,就不用你再去重新声明一遍这些成员属性

和方法了,因为学生类里面还有所在学校的属性和学习的方法,所以在你做的学生类里面有

继承自人类里面的属性和方法之外在加上学生特有的“所在学校属性”和“学习的方法”,

这样一个学生类就声明完成了,继承我们也可以叫做“扩展”,从上面我们就可以看出,学生

类对人类进行了扩展,在人类里原有两个属性和两个方法的基础上加上一个属性和一个方法

扩展出来一个新的学生类。

通过继承机制,可以利用已有的数据类型来定义新的数据类型。所定义的新的数据类型

不仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基

类,又称为父类以及超类。由已存在的类派生出的新类称为派生类,又称为子类。

在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分

类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。采用继承性,

提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重

用性。

在C 语言中,一个派生类可以从一个基类派生,也可以从多个基类派生。从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。

但是在PHP 和Java 语言里面没有多继承,只有单继承,也就是说,一个类只能直接从

一个类中继承数据,这就是我们所说的单继承。

例如:

下面是“人”类的抽象

代码片段

//定义一个“人”类作为父类

class Person{

//下面是人的成员属性

var $name; //人的名子

var $sex; //人的性别

var $age; //人的年龄

//定义一个构造方法参数为属性姓名$name、性别$sex和年龄$age进行赋值

function __construct($name, $sex, $age){

$this-

© 版权声明

相关文章

暂无评论

none
暂无评论...