你了解Java设计模式中的流水线模式吗?发一个简单的demo给我
时间: 2023-05-13 13:07:22 浏览: 141
当然,我了解Java设计模式中的流水线模式。以下是一个简单的demo:
```
public interface PipelineTask {
void execute();
}
public class TaskA implements PipelineTask {
@Override
public void execute() {
System.out.println("Task A executed");
}
}
public class TaskB implements PipelineTask {
@Override
public void execute() {
System.out.println("Task B executed");
}
}
public class TaskC implements PipelineTask {
@Override
public void execute() {
System.out.println("Task C executed");
}
}
public class Pipeline {
private final List<PipelineTask> tasks = new ArrayList<>();
public void addTask(PipelineTask task) {
tasks.add(task);
}
public void execute() {
for (PipelineTask task : tasks) {
task.execute();
}
}
}
public class Main {
public static void main(String[] args) {
Pipeline pipeline = new Pipeline();
pipeline.addTask(new TaskA());
pipeline.addTask(new TaskB());
pipeline.addTask(new TaskC());
pipeline.execute();
}
}
```
这个demo演示了一个简单的流水线模式,其中PipelineTask是一个接口,定义了execute方法,TaskA、TaskB和TaskC是实现了PipelineTask接口的具体任务,Pipeline是一个包含多个任务的流水线,可以执行所有任务。在Main类中,我们创建了一个Pipeline对象,并添加了三个任务,然后执行了所有任务。
阅读全文
相关推荐


















