java设计模式-代理模式

来源:互联网 发布:sql语言select语句 编辑:程序博客网 时间:2024/06/06 04:01

代理模式

   就是多一个代理类出来,替原对象进行一些操作。

   比如我们在租房子的时候回去找中介;因为你对该地区房屋的信息掌握的不够全面,希望找一个更熟悉的人去帮你做,而在这个找房过程全部交给中介,你只需关注最后找到的房子。废话不多讲,看代码!

资源类的超类:

public interface LifeSourceable {public void findHouse();}
资源类:现实功能
public class LifeSource implements LifeSourceable {@Overridepublic void findHouse() {// TODO Auto-generated method stubSystem.out.println("find house ...........");}}
代理类:实现功能,并封装加强该功能

public class LifeProxy implements LifeSourceable {private LifeSource source;public LifeProxy() {super();this.source = new LifeSource();}private void before() {System.out.println("In the find house before,Contact the landlord");}@Overridepublic void findHouse() {// TODO Auto-generated method stubbefore();this.source.findHouse();after();}private void after() {System.out.println("In the find house before,Contact the you");}}
测试类:

public class Test {public static void main(String[] args) {LifeProxy p = new LifeProxy();p.findHouse();}}
输出结果:找房子:1.中介联系房东,2.找房子 3.联系你

In the find house before,Contact the landlordfind house ...........In the find house before,Contact the you

这个就是一个简单的代理模式,看懂了请点个赞,谢谢。



1 0
原创粉丝点击