java静态代理

静态代理

package com.xiao.demo02;

//静态代理模式总结:
//真实对象和代理对象都要实现同一个接口
//代理对象要代理真实
//好处,代理对象可以做很多真实对象做不了的事情
//真实对象专注做自己的事情
public class StaticProxy {
    public static void main(String[] args) {
        You you = new You(); //你要结婚

        new Thread(()-> System.out.println("我学历")).start();
        new WeddingCompany(new You()).HappyMarry();




        //WeddingCompany weddingCompany = new WeddingCompany(new You());
       // weddingCompany.HappyMarry();
    }
}
interface  Marry{
    void  HappyMarry();
}
class You implements Marry{

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

    //代理谁--》真实目标角色
    private Marry target;

    public WeddingCompany(Marry target) {
        this.target = target;
    }

    @Override
    public void HappyMarry() {
        before();
        this.target.HappyMarry(); //这就是真实对象,
        after();

    }

    private void after() {
        System.out.println("结婚之前");
    }

    private void before() {
        System.out.println("结婚之后");
    }
}

地址http://www.cnblogs.com/V1haoge/p/5860749.html

posted @ 2021-03-04 10:59  岁月-伤  阅读(47)  评论(0)    收藏  举报