在没有多重继承或重复代码的情况下扩展类


Extend classes without multi-inheritance or duplicate code

我试图找出如何正确地扩展几个类没有重复的代码。我有以下类:

  • 基数(方法A,方法B)
  • 发票:基数(方法C)
  • 装运:基地(方法D)

我必须在不修改它们的情况下调整一些功能。问题是我需要调整的一些方法在基类中。

如果我扩展基类,我将需要复制方法C和d。如果我扩展每个最终类,那么我需要复制方法A, b的更改。

我如何正确地做到这一点没有多继承(PHP,不可能)或重复的代码?

您可以使用trait来完成此操作。

http://php.net/manual/en/language.oop5.traits.php

相关文章: