委派模式不是GOF23中的一員,但是在Spring中經常用到該模式,比如Registry等功能。
以現實生活中的老闆委派員工幹活來舉例,比如說政府要求企業改革,老闆將改革的任務發放給員工,老闆出錢員工出力,但是功勞還是算在老闆頭上的,沒有人關心這一任務的過程,只關心這個任務的結果,這種模式就是委派模式。
Task.java
一個普通的任務介面。
public interface Task {
void doing();
}
複製程式碼
Boss.java
Boss是一個委派任務的物件,它將任務委派下去。
public class Boss implements Task{
private Task task;
Boss(Task task){
this.task = task;
}
@Override
public void doing() {
System.out.println("我是BOSS,我要開始委派人做任務拉,我不管你做任務的過程(是否加班),我只要這個任務的結果");
task.doing();
}
}
複製程式碼
WorkerA.java
員工A。
public class WorkerA implements Task{
@Override
public void doing() {
System.out.println("我是work-A,老闆委派我做任務,活其實是我乾的,但是功勞是老闆的");
}
}
複製程式碼
WorkerB.java
員工B.
public class WorkerB implements Task{
@Override
public void doing() {
System.out.println("我是work-B,老闆委派我做任務,活其實是我乾的,功勞是老闆的");
}
}
複製程式碼
如果你喜歡我的文章,那麻煩請關注我的公眾號,公眾號重點分析架構師技術,該公眾號還處於初始階段,謝謝大家的支援。
關注公眾號,回覆java架構
獲取架構視訊資源(後期還會分享不同的優質資源噢)。