理解java中的委托模式

理解java中的委托模式,java,design-patterns,delegation,Java,Design Patterns,Delegation,我从这里学习委托模式: 这让我困惑如下: 委托模式==方法重载/重写 委托模式==多态性 上述任何一项都是正确的吗?不正确。 在一个简单的java示例中,对象a有一个方法,该方法可以转换并调用对象B上的方法 在一个复杂的示例中,对象B实现了接口a,但您可以要求接口a执行一个方法,它将告诉B执行该方法 这些都与多态性或重写没有多大关系 不太可能。 在一个简单的java示例中,对象a有一个方法,该方法可以转换并调用对象B上的方法 在一个复杂的示例中,对象B实现了接口a,但您可以要求接口a执行一个方法

我从这里学习委托模式: 这让我困惑如下:

  • 委托模式==方法重载/重写
  • 委托模式==多态性
  • 上述任何一项都是正确的吗?

    不正确。 在一个简单的java示例中,对象a有一个方法,该方法可以转换并调用对象B上的方法

    在一个复杂的示例中,对象B实现了接口a,但您可以要求接口a执行一个方法,它将告诉B执行该方法

    这些都与多态性或重写没有多大关系

    不太可能。 在一个简单的java示例中,对象a有一个方法,该方法可以转换并调用对象B上的方法

    在一个复杂的示例中,对象B实现了接口a,但您可以要求接口a执行一个方法,它将告诉B执行该方法


    这些都与多态性或重写没有多大关系

    它们都不是真的。假设A将某件事委托给B,那么委托只是调用另一个对象B的方法(对象A在内部声明了该方法),而不是由对象A自己执行此任务

    是的,A和B的方法名通常是相同的(很可能是因为常识),但它既不是重载也不是多态性


    (此外,委托可能更复杂。例如,对象A在委托之前选择一个委托(B、C或D…),等等。)

    它们都不是真的。假设A将某件事委托给B,那么委托只是调用另一个对象B的方法(对象A在内部声明了该方法),而不是由对象A自己执行此任务

    是的,A和B的方法名通常是相同的(很可能是因为常识),但它既不是重载也不是多态性


    (此外,委托可能更复杂。例如,对象A在委托之前选择一个委托(B、C或D…),等等。)

    摘自文章:“委托只是将责任转嫁给其他人/事。”尽管它可以用于实现重载或多态性,但这不必发生。这实际上是一种独立的技术。看看这篇文章——据我所知,这篇文章没有给出您列出的两种说法中的任何一种。摘自文章:“委派只是将责任转嫁给其他人/事。”尽管它可以用于实现重载或多态性,但这不需要发生。这真的是一种独立的技术。看看这篇文章——据我所知,这篇文章没有给出你列出的两种说法中的任何一种。