6.7.4 理解多重继承

少数的面向对象语言(最著名的就是C++和Smalltalk)支持多重继承,但是与大多数面向对象语言一样,PHP并不支持多重继承。也就是说,每个类都只能继承一个父类。一个父类可以有多少个子类并没有限制。这样解释可能还不是非常清晰。图6-1显示了3个类A、B和C之间相互继承的3种不同的方式。

6.7.4 理解多重继承 - 图1

图 6-1 PHP不支持多重继承

左图表示类C继承类B,而类B继承了A。每个类至多只有一个父类,因此,在PHP中这完全是有效的单一继承。

中间图例表示类B和类C都继承了类A。每个类至多有一个父类,因此这也是有效的单一继承。

右图表示类C继承了两个类:类A和类B。在这种情况下,类C具有两个父类,因而也就是多重继承,这在PHP中这是无效的。