标签:int 不同 test class 需要 dom image 角色 总结
委派模式结构图:
示例代码:
// 抽象任务类
public interface Task {
void doTask();
}
// 具体任务角色A
public class ConcreteTaskA implements Task{
@Override
public void doTask() {
System.out.println("具体任务类A执行任务======");
}
}
// 具体任务角色B
public class ConcreteTaskB implements Task{
@Override
public void doTask() {
System.out.println("具体任务类B执行任务======");
}
}
// 委派者角色
public class Delegate implements Task{
@Override
public void doTask() {
System.out.println("开始执行任务:");
Task task = null;
if (new Random().nextBoolean()){
task = new ConcreteTaskA();
}else {
task = new ConcreteTaskB();
}
task.doTask();
}
}
// 测试
public class DelegateTest {
public static void main(String[] args) {
Delegate delegate = new Delegate();
for (int i = 0; i < 10; i++) {
delegate.doTask();
}
}
}
总结:
优点:能够将一个大型任务细化,然后通过统一管理这些子任务的完成情况实现任务的跟进,加快任务的执行效率;
缺点:需要根据任务的复杂程度进行不同的改变,在任务比较复杂的情况下,可能需要进行多重委派,容易造成紊乱.
标签:int 不同 test class 需要 dom image 角色 总结
原文地址:https://www.cnblogs.com/wqlken/p/14720075.html