代理模式(一)

代理模式分为:动态代理、静态代理。

代理模式的UML类图:

代码:

package com.jxufe.proxy;
/**
 * 这是一个接口类
* @author jack
* @version 创建时间:2016年5月6日 上午10:37:32
*
 */
public interface FlyAble {
       
	public void fly();
}

package com.jxufe.proxy;
/**
 * 委托类
* @author jack
* @version 创建时间:2016年5月6日 上午10:39:08
*
 */
public class AirPlane implements FlyAble {

	public void fly() {
		System.out.println("飞机飞行中。。。。。。。。。。");

	}

}

package com.jxufe.proxy;
/**
 * 代理类
* @author jack
* @version 创建时间:2016年5月6日 上午10:42:41
*
 */
public class ProxyRoute implements FlyAble {
     private AirPlane plane;
     public ProxyRoute(AirPlane plane) {
    	 this.plane = plane;
	}
	public void fly() {
		System.out.println("开始起飞记录行程。");
		plane.fly();
		System.out.println("飞机降落共行驶1000km");
	}

}
package com.jxufe.proxy;
/**
 * 测试类
* @author jack
* @version 创建时间:2016年5月6日 上午10:47:23
*
 */
public class ProxyRouteTesst {
	public static void main(String[] args) {
		  AirPlane plane = new AirPlane();
	      FlyAble aircraft =  new ProxyRoute(plane);
	       aircraft.fly();
	}
	  
}



猜你喜欢

转载自blog.csdn.net/mnjlj_23nmk/article/details/51329870