首页 > 编程语言 > 详细

java设计模式之代理模式

时间:2015-10-29 18:03:03      阅读:233      评论:0      收藏:0      [点我收藏+]

最近在重新学习java,学到了java的设计模式的代理模式.

代理模式分为静态代理和动态代理

下面是我的学习心得:

静态代理:实现了一遍静态代理后,总的来说就是,代理类和被代理类实现了同一个接口,属于相同的类型,拥有相同的方法,代理类持有被代理类的引用,在代理类的方法里调用被代理类的方法就是静态代理的原理.

代码展示

技术分享

public interface ZuFang {
    
    public void zf();

}
public class PeopleZF implements ZuFang {

    @Override
    public void zf() {
        System.out.println("租房子");
    }

}
public class ZFProxy implements ZuFang {

    private ZuFang zfz;

    public ZFProxy() {
        super();
        this.zfz = new PeopleZF();
    }

    @Override
    public void zf() {
        before();
        zfz.zf();
        atfer();
    }

    private void before() {
        System.out.println("开始租房");

    }

    private void atfer() {
        System.out.println("租房结束");
    }

    

}
public class RopxyFactory {
    
    public static ZuFang getZuFang(){
        return new ZFProxy();
    }

}
public class Test001 {
    @Test
    public void test1() {    
        ZuFang zuFang = RopxyFactory.getZuFang();
        zuFang.zf();
    }

    /**
     * 静态代理: 代理类和被代理类都实现头一个接口,这样 两个类都有头一个方法. 在代理类中加入被代理类的对象. 代用代理类的方法中调用被代理类的方法.
     * 这样就到达了调用被代理类的方法,同事调用代理类的效果,而且可以在被代理类的方法调用前后加入一些其他的方法.
     * 
     */
}

动态代理

分析:动态代理要实现

 

java设计模式之代理模式

原文:http://www.cnblogs.com/songfahzun/p/4921146.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!