NBA之代理模式

122 阅读1分钟

Design Pattern:

In proxy pattern, a class represents functionality of another class. This type of design pattern comes under structural pattern. In proxy pattern, we create object having original object to interface its functionality to outer world. 模式:为其他对象提供一种代理以控制对这个对象的访问,例如安全控制如果都交给对象会使得业务复杂,因此多加一个对此对象的访问层

和适配器区别:适配器是改变对象接口 和装饰器区别:

故事场景:Curry为什么当时没有和Nike签约而是和UA,源于当时Nike对Curry的不重视,已经有了詹姆斯杜兰特等当家球星,准备把Curry纺织二线位置, 然而Curry的父亲并不开心,对儿子说选择一个新的尝试吧。 新闻链接: https://bbs.hupu.com/15810469.html

Curry CurryFather是Curry的代理

public interface Person {

    public void assign();
}

public class Curry implements Person {

    @Override
    public void assign() {
        System.out.println("Curry:好,我和UA签约!");
    }
}

public class CurryFather implements Person{

    private Person curry = new Curry();

    @Override
    public void assign() {
        System.out.println("CurryFather:我觉得你在Nike并不属于当家球星,选择一个新的尝试?");
        curry.assign();
    }
}

实验的开始
    public class ProxyDemo {

        public static void main(String[] args) {
            CurryFather cf = new CurryFather();
            cf.assign();
        }
    }



结果