Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.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 Executor框架实现了什么设计模式?_Java_Design Patterns_Abstract Factory_Executors - Fatal编程技术网

Java Executor框架实现了什么设计模式?

Java Executor框架实现了什么设计模式?,java,design-patterns,abstract-factory,executors,Java,Design Patterns,Abstract Factory,Executors,我的理解是,它似乎非常类似于抽象工厂 注: 执行器接口: public interface Executor { public void execute(); } 还有一个Executors类,它包含各种Executor实现的静态工厂。它不是。它是模式与模式的结合 执行器接口是命令模式。实现execute() 根据GoF,调解人模式的意图是: 通过封装不同对象集相互交互和通信的方式,允许松散耦合。允许每个对象集的动作彼此独立地变化 JDK中的中介模式 java.util.Timerc

我的理解是,它似乎非常类似于抽象工厂

注:

执行器接口:

public interface Executor {
     public void execute();
}
还有一个
Executors
类,它包含各种
Executor
实现的静态工厂。

它不是。它是模式与模式的结合

执行器接口是命令模式。实现
execute()

根据GoF,调解人模式的意图是:

通过封装不同对象集相互交互和通信的方式,允许松散耦合。允许每个对象集的动作彼此独立地变化

JDK中的中介模式

java.util.Timerclass
scheduleXXX()
methods

java.util.concurrent.Executor
execute()
方法

java.lang.reflect.Methodclass
invoke()
Method


查看源以了解更多详细信息

需要注意的是,虽然工厂主要与创建有关,但Executor接口定义的方法主要与任务的执行有关。命令模式由执行的Runnable而不是Executor本身显示。感谢链接。但它更多的是命令模式而不是中介模式,不是吗?不确定中介设计模式下的行为/组件是什么,您能帮助解释一下吗?看一下:以更好的方式理解