一:概念
一個對象接收到了請求,但是自己不處理,交給另外的對象處理,就是委托模式,例如 老板接到了活,
然后把活轉手給了工人去做。
二:示例
創建一個類IReceiveTask,代表接收任務的動作
public interface IReceiveTask { void receive(String task); }
創建一個類BossService,老板可以接收任務,並且可以命令工人
public class BossService implements IReceiveTask{ private WorkerService workerService; public BossService(WorkerService workerService){ this.workerService = workerService; } @Override public void receive(String task) { workerService.receive(task); } }
創建一個工人類Worker,工人可以接收任務
public class WorkerService implements IReceiveTask{ @Override public void receive(String task) { System.out.println("工人開始"+task); } }
測試類:
public class TestEntrust { public static void main(String[] args) { String task = "搬磚"; WorkerService workerService = new WorkerService(); BossService bossService = new BossService(workerService); bossService.receive(task); } }
老板接到任務后,把任務委托給了工人做