代码之家  ›  专栏  ›  技术社区  ›  Sudantha

PHP中的动态多态性

  •  3
  • Sudantha  · 技术社区  · 15 年前

    PHP中的动态多态性是否像模板类一样受支持,或者在PHP中使用多态性的唯一方法是抽象函数和重载/重写?

    4 回复  |  直到 15 年前
        2
  •  2
  •   Community Mohan Dere    9 年前

    没有什么比模板类更好的了,但是您可以通过使用抽象类和接口以及使用设计模式(如State、Decorator、Strategy等)来实现不同的运行时行为。

    相关: Is what seems like polymorphism in PHP really polymorphism?

        3
  •  1
  •   johnny    15 年前

    您可以使用接口和抽象类。

        4
  •  1
  •   James Thompson    15 年前

    可以使用接口向类添加公共功能。当然,您也可以重写特定的函数并扩展类。我对类的功能进行变形的最常见方法是从一个基(模板)类开始,并为其使用树中的每个fork扩展它。