我遇到过这样的情况,我想扩展两个父类,但是 php 不允许这样做。
为什么我不能扩展
多个类,但可以实现
多个接口(interface)
。扩展很多类有什么问题?
在我遇到解析错误之前,这对我来说似乎是一件很明显的事情。
这是一种不好的做法吗?如果可以,有哪些替代方案?
可以用其他语言吗?
最佳答案
为什么在某些/大多数编程语言中禁止多重继承与菱形问题有关 http://en.wikipedia.org/wiki/Diamond_problem .
简单地说,如果您有一辆可以游泳和驾驶的汽车,因为它继承自车辆和船只,那么在执行移动功能时会发生什么!?
尝试使用接口(interface)并遵循策略模式或状态模式。
关于PHP:为什么不能扩展多个类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3997860/