php - 我应该如何避免多个类继承的需要

标签 php multiple-inheritance

我碰巧需要从另外两个类中扩展我的类:

  1. 我的 PDOUser 类提供基本的 PDO 辅助函数,例如 getRowquerymysql_error 等。
  2. 我的Debuggable类,提供调试方法和错误方法来打印出良好的调试和错误消息。

我被告知继承多个类是一种令人困惑的编写程序的方式,这就是 PHP 不支持它的原因。

为什么我不敢怀疑更有经验的程序员的建议,我找不到更好的方法来解决我的问题。

我无法将任何类设为静态。 PDOUser 类提供 protected 属性 pdo,也可以从子类访问该属性。 调试器类访问当前的类名称和方法名称以提供有用的调试信息。

我可以让一个帮助器类继承另一个,但我认为这也会令人困惑。

最佳答案

您可以使用组合而不是继承。这会解耦你的对象。 您的新类不需要继承两个类,它可以将它们作为实例并使用它们的功能。

继承与组合:

关于php - 我应该如何避免多个类继承的需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23029596/

相关文章:

java - Java 中的每个子类都继承自两个类(Object 及其父类(super class))?

php - 使用 php 在 xml 中获取标记名

php - HTTP请求失败怎么解决! HTTP/1.1 463?

php - 在 PHP 中标记化 CSS 的性能

带有另一个基类的 python 抽象方法破坏了抽象功能

c++ - C++接口(interface)多重继承中的歧义

python - 方法解析顺序 (MRO) 如何在此 Python 代码中工作

php - 将 "Integrity constraint violation: 1048 Column cannot be null "设为警告消息

php - 为什么我的 JQuery 脚本在附加时会添加 html 标签?

c++ - 多重继承和虚拟继承 C++