package com.java.exec2; /** * Created by zhangyanana on 2017/3/16. */ //静态代理模式 //接口 interface ClothFactory { void productCloth(); } //被代理类 class NikeClothFactory implements ClothFactory { @Override public void productCloth() { System.out.println("Nike工厂生产一批衣服"); } } //代理类 class ProxyFactory implements ClothFactory { ClothFactory cf; //创建代理类对象时,实际传入一个被代理类的对象 public ProxyFactory(ClothFactory cf) { this.cf = cf; } @Override public void productCloth() { System.out.println("代理类开始执行,收代理费$1000"); cf.productCloth(); } } public class TestClothProduct { public static void main(String[] args) { NikeClothFactory ncf = new NikeClothFactory();//创建被代理类的对象 ProxyFactory pf = new ProxyFactory(ncf);//创建代理类的对象 pf.productCloth(); } }