应用软件所提供的桌面快捷方式是快速启动应用程序的代理,桌面快捷方式一般使用一张小图片来表示(Icon),通过调用快捷方式的run()方法将调用应用软件(Application)的run()方法。使用代理模式模拟该过程,绘制类图并编程模拟实现。
类图:
实现代码:
抽象主题类Application : package ProxyPattern2;
public abstract class Application { public abstract void run(); }
真实主题类RealApp : package ProxyPattern2;
public class RealApp extends Application { @Override public void run() { System.out.println("运行程序"); } }
代理主题类Icon : package ProxyPattern2;
public class Icon extends Application { private RealApp realApp = new RealApp(); @Override public void run() { System.out.println("点击图标"); realApp.run();
} }
客户端类Client : package ProxyPattern2;
public class Client { public static void main(String[] args) { Application application; application = new Icon(); application.run(); }
} |