Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 中介对象是如何工作的?背后的想法是什么?_Java_Mediator - Fatal编程技术网

Java 中介对象是如何工作的?背后的想法是什么?

Java 中介对象是如何工作的?背后的想法是什么?,java,mediator,Java,Mediator,我对mediator对象感兴趣,因为它听起来很有用,但是为了学习如何与该对象交互和构建该对象而破译代码示例却让我不知所措。我喜欢代码示例,如果它们附带一些解释,无论多么简短。当我构建中介对象时,有人能解释我正在构建什么吗 中介对象是处理类之间发送的操作事件的一种方式吗?或者中介对象只是为了更好地将类似的代码整合到一个方便的地方 我不知道它是为了方便而实用,还是因为没有其他方法可以实现它的功能而实用。任何细节,不管怎样“简化”,都是最好的。提前感谢。中介对象本身不做任何事情。您不应该将您已经拥有的

我对mediator对象感兴趣,因为它听起来很有用,但是为了学习如何与该对象交互和构建该对象而破译代码示例却让我不知所措。我喜欢代码示例,如果它们附带一些解释,无论多么简短。当我构建中介对象时,有人能解释我正在构建什么吗

中介对象是处理类之间发送的操作事件的一种方式吗?或者中介对象只是为了更好地将类似的代码整合到一个方便的地方

我不知道它是为了方便而实用,还是因为没有其他方法可以实现它的功能而实用。任何细节,不管怎样“简化”,都是最好的。提前感谢。

中介对象本身不做任何事情。您不应该将您已经拥有的任何逻辑移入其中,除了一些多路复用/解多路复用(当一个对象向多个其他对象发送相同的消息时)。中介器只是一个外部接口(如果它同时充当门面的话),而且肯定是预先存在的对象之间的消息传递通道

同样,在您已经意识到需要这样一个消息传递通道之前,不应该创建中介。这种需要是什么样的?您已经有了一组对象,它们开始以越来越复杂的方式相互调用。这些对象正在存储对彼此的引用;此类引用的数量已经超过了此类对象本身的数量

因此,不是每个对象都与每个对象对话(具有二次数量的引用和复杂的交互图形),而是将星形拓扑引入交互;每个人都直接与调解人交谈。这样,实例化、监视、调试、扩展和多态化就更容易了


不要过早地引入中介体,否则整体复杂性将增长而不是下降。

您是否尝试阅读了?我有,我只是不理解“英语”中对对象的描述,就像实际做的一样。我想我在想,这是你根据自己的需要构建的东西,还是在我尝试这一点时应该遵循一个标准。这是一个奇妙的答案,让我对我所困惑的每一个方面都有了深刻的认识。非常感谢你!