代理设计模式类比游戏代练,代练需要知道你的游戏及游戏账号,密码。然后代练“辅助”你上分。
也类似于海外代购,代购需要知道他的客户是谁,需求是什么

以下以买电脑为例
interface ISubject
{
public void BuyComputer();//核心功能是买电脑
}
class ReaLSubject implements ISubject
{
public void BuyComputer()
{
System.out.println("买一台外星人电脑");
}
}
class ProxySubject implements ISubject
{
private ISubject subject;//真实操作业务
public ProxySubject(ISubject subject)
{
this.subject = subject;
}
public void produceComputer()
{
System.out.println("生产外星人电脑");
}
public void afterSale()
{
System.out.println("外星人售后");
}
public void BuyComputer()
{
this.produceComputer();//真实操作前的准备
this.subject.BuyComputer();//调用真实业务
this.afterSale();//操作后的收尾
}
}
class Factory
{
public static ISubject getInstance()
{
return new ProxySubject(new ReaLSubject());
}
}
public class Text
{
public static void main(String[] args)
{
ISubject subject = Factory.getInstance();
subject.BuyComputer();
}
}

309

被折叠的 条评论
为什么被折叠?



