静态代理代码非常简单,简单明了,主要是思想。 /** * @ClassName ProxyInterface * @Description 静态代理(代理接口) * @Autor d * @Date 2019/2/25 14:56 * @Version 1.0 */ public interface ProxyInterface { /** * 静态代理方法 */ void proxy(); }
/** * @ClassName ProxyObject * @Description 静态代理(代理对象) * @Autor d * @Date 2019/2/25 15:02 * @Version 1.0 */ public class ProxyObject implements ProxyInterface { private RealObject realObject; public ProxyObject(RealObject realObject){ this.realObject = realObject; } @Override public void proxy() { realObject.proxy(); } }
/** * @ClassName RealObject * @Description 静态代理(真实对象) * @Autor d * @Date 2019/2/25 15:01 * @Version 1.0 */ public class RealObject implements ProxyInterface { @Override public void proxy() { System.out.println("真实对象打印的方法,真实方法"); } }
/** * @ClassName Test * @Description 静态代理(测试) * @Autor d * @Date 2019/2/25 15:04 * @Version 1.0 */ public class ProxyTest { public static void main(String[] args) { ProxyObject proxyObject = new ProxyObject(new RealObject()); proxyObject.proxy(); } }