辛苦打了很多字不小心删掉了,简单点说吧,就是...还是直接看代码...
接口是标准,说明一客户想制作一软件,但是做软件要求有计算机编程能力ComputerSoft ,
public interface ComputerSoft { public String programing(int Money,String needs); }
这样,客户通过出钱和需求,来制作一个软件,于是找到了项目经理ProjectManager
public class ProjectManager implements ComputerSoft{ public String programing(int money, String needs) { return sourcecode; }
很明显项目经理多年不干程序,除了吃什么都不会,于是雇来员工,员工的会编程啊,所以有
public class CodingWorker implements ComputerSoft{ public String programing(int Money, String needs) { //programing....... return "sourceCode"; } }
要项目经理干吗的....?所以项目经理变成
public class ProjectManager implements ComputerSoft{ ComputerSoft pg; //雇用员工... public void setPG(ComputerSoft PG) { this.pg = PG; } //开干.. public String programing(int money, String needs) { money = money - 2000; String sourcecode =pg.programing(money, needs); return sourcecode; } }
项目经理就是代理类,这就是一个简单代理模式