java 代理模式简单示例

来源:互联网 发布:浙江问问网络卖手机 编辑:程序博客网 时间:2024/06/05 17:35

以前

package proxy;

//代理的目的是在达到目的之前可以做一些事情
class ImagProxy {// 代理
 IImage id;

 public ImagProxy(IImage id) {
  this.id = id;
 }

 public void displayImag() {
  System.out.println("显示缩略图片");
 }

 public void mousePress() {// 点击缩略图片
  id.displayImag();
 }
}

interface IImage {// 面向接口编程,目的是降低代理与实际类之间的偶合
 public void displayImag();
}

class ImagDisplay implements IImage {// 实际工作类
 public void displayImag() {
  System.out.println("显示正常图片");// 非常消耗内存
 }
}

public class Proxy {

 public static void main(String[] args) {
  ImagProxy proxy = new ImagProxy(new ImagDisplay());// 可以注入
  proxy.displayImag();// 客户端感觉只是和代理
  proxy.mousePress();// 想看实际图片

 }

}

原创粉丝点击