静态代理设计模式

代理模式(Proxy):为其余对象提供一种代理以控制对这个对象的访问。java

代理模式说白了就是“真是对象”的表明,在访问对象时引用必定程度的间接性,由于这种间接性能够附加多种用途。设计模式

package com.main;

//静态代理设计模式
public class StaticProxy {

 public static void main(String[] args) {
  Customer customer = new Customer();
  Proxy proxy = new Proxy(customer);
  proxy.shopping();
 }

}

// 主题。被代理人接口(被代理的业务)
interface Subject {
 public void shopping();
}

// 被代理人
class Customer implements Subject {
 private String name;

 @Override
 public void shopping() {
  // 在买房子以前要货比三家,作些准备工做,利用代理模式来实现
  System.out.println("准备买一套房子");
 }

}

// 代理人
class Proxy implements Subject {
 private Subject target;// 被代理人

 public Proxy(Subject target) {
  this.target = target;
 }

 // 实现接口的方法
 @Override
 public void shopping() {
  // 代理以前要作的事情
  System.out.println("代理以前要作的事情:选择一套符合要求的房子");
  target.shopping();// 被代理人真正的业务
  // 代理以后要作的事情
  System.out.println("代理以后要作的事情:付款交接,客户反馈");
 }

}
相关文章
相关标签/搜索