委派模式(二十)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014401141/article/details/83650756

 委派模式(Delegate)是面向对象设计模式中常用的一种模式。不属于23中设计模式,在springMvc中的DispatcherServlet有应用。

角色:

1.委派人-(经理)

2.受托人-(员工)

类图:

实例代码:

委派人

package com.dz.test;

/**
 * 被委派者-员工接口
 *
 * @author alen
 * @create 2018-11-02 9:54
 **/
public interface Executor {
    //做事
   void doWork();
}

受托人A

package com.dz.test;

/**
 * 员工A
 *
 * @author alen
 * @create 2018-11-02 9:56
 **/
public class ExecutorA implements  Executor {
    @Override
    public void doWork() {
        System.out.println("员工A做事,,,,");
    }
}

受托人B

扫描二维码关注公众号,回复: 5104833 查看本文章
package com.dz.test;

/**
 * 员工B
 *
 * @author alen
 * @create 2018-11-02 9:56
 **/
public class ExecutorB implements  Executor {
    @Override
    public void doWork() {
        System.out.println("员工B做事,,,,");
    }
}

测试类:

package com.dz.test;

public class Test {

	public static void main(String[] args) {
		//委派具体的员工执行
		Dispatcher dispatcher=new Dispatcher(new ExecutorA());
		//做事
		dispatcher.doWork();
	}

}

特点:

1.类似与中介的功能(委托机制)

2.持有被委托人的引用

3.不关心过程,只关心结果(可以分发给不同员工执行,结果可能不同)

猜你喜欢

转载自blog.csdn.net/u014401141/article/details/83650756