2009-08-26 52 views
0

我正在使用框架,但有时我需要通过重载类来改变某些方法。OOP - 在同一时间重载一个孩子及其父类?

我的问题是,当B类从A类继承,并在那里我需要重载他们两个,如:

class B extends A {} 

首先我重载A和B,以改变他们的一些方法:

class AA extends A {} 
class BB extends B {} 

那么是什么为BB做从AA

延伸。在别人的话( '< - ' 号填列扩展):

class B <--- class A 
^   ^
    |    | 
    |    | 
class BB <-?- class AA 

回答

1

是。这是Traits或组合来玩的地方。

基本上,在编程概念的特征是一组功能,您可以包含到任何类。将特征看作只是一组可以添加到类中的函数。

0

你要完成被称为多重继承什么,但不是由PHP和大多数其他最近的语言支持。很少有充分的理由使用多重继承,并且因为它可能会造成混淆,所以通常会被忽略。

如前所述,你大概可以达到你想要在一个干净的笏通过什么成分,但没有有关类的详细信息,也不可能给艾米具体建议。

0

一个好的经验法则总是比继承更喜欢构图。一旦你开始思考这种方式,几乎总是使用组合,决定何时使用继承变得非常明显。

相关问题