Static_Porxy(静态代理模式)

僤鯓⒐⒋嵵緔 提交于 2020-03-20 08:42:23

Static Porxy(静态代理模式)

要求:

  • 1、要求有:真是角色和代理角色两个对象;
  • 2、真实角色 和 代理角色要实现同一个接口;
  • 3、代理角色要持真实角色的引用;
package com.xu.threads;

public class StaticPorxy {

    //静态代理模式
    public static void main(String[] args) {

        WeddingMarry weddingMarry = new WeddingMarry(new You());
        weddingMarry.HappyMarry();
    }
}

interface Marry{    // 接口
    void HappyMarry();
}

class You implements Marry{  // 真实角色 You

    @Override
    public void HappyMarry() {
        System.out.println("结婚");
    }
}

class WeddingMarry implements Marry{  //代理对象 WeddingMarry

    private You you;   // 持有真实角色的引用

    public WeddingMarry(You you) {
        this.you = you;
    }


    @Override
    public void HappyMarry() {
        befor();
        this.you.HappyMarry();
        after();
    }
    
    
    // 代理角色帮你做的事情,真实角色就可以专注的做一件事情
    public void befor(){
        System.out.println("婚前");
    }

    public void after(){
        System.out.println("婚后");
    }
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!