gpt4 book ai didi

oop - 'Adapter' 和 'Mediator"模式之间的确切区别是什么?

转载 作者:行者123 更新时间:2023-12-02 03:22:26 25 4
gpt4 key购买 nike

我知道Adapter是一种结构模式,Mediator是一种行为模式。但据我了解,他们俩正在做的事情是连接两个(或更多)其他类,这些类对于直接通信可能不兼容(不太可维护)。

有人可以对这两者进行仔细比较并指出确切的区别吗?

这些是 Adapter 的链接和 Mediator TutorialsPoint 中的解释。

这些是源代码解释。 Adapter , Mediator .

最佳答案

在我看来,它们没有太多共同点。

中介器用于避免将多个组件耦合在一起。每个组件不是直接相互“对话”(因此必须相互了解并知道如何相互通信),而是每个组件与单个对象对话:中介者。这个名字是故意选择的:当你与邻居打架并且无法与他沟通时,你会去找调解员,而不是互相交谈,而是与调解员交谈,后者试图解决问题。

适配器用于将具有接口(interface)的对象“转换”为具有其他接口(interface)的对象。例如,就像一个电源适配器,可以将欧洲电源 socket 转换为美国电源 socket ,以便您可以在欧洲使用美国 Razor 。简单的例子:您需要将 Runnable 存储到 Callable 列表中。 Runnable 有一个 run() 方法。 Callable 有一个方法 call()。因此,您创建了一个适配器:

public class RunnableAdapter implements Callable {
private Runnable runnable;

public RunnableAdapter(Runnable runnable) {
this.runnable = runnable;
}

public void call() {
runnable.run();
}
}

关于oop - 'Adapter' 和 'Mediator"模式之间的确切区别是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37774246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com