随手一查---装饰器与适配器,代理模式

装饰器通过包装一个装饰对象来扩展其功能,而又不改变其接口,这实际上是基于对象的适配器模式的一种变种。与对象的适配器模式异同:

  1. 相同点:都拥有一个目标对象,都是增加新功能。

         2. 不同点:装饰器主要是要给对象加功能,主要体现在    new zhuangpei(new oldClass()) ,用新对象把旧对象包装起来,然后添加新功能 。

                  适配器,是要用的对象不能满足新功能,但是新功能又不需要去重写,通过使用已有的接口来实现功能(为什么用功能不直接去注入接口呢?跟电脑是一样的,usb接口已经规定好,不能去修改)

                  适配器类是需要注入需要使用的接口,但是适配器类是需要实现被适配类注入的接口,还是需要实现被适配类所实现的接口?

             所以问题就来到了下面:

                  1)每一个对象要使用功能(也是方法),要么在对象所在的类里写这个功能,要么注入有所需要功能的接口。

                  2)每一个对象都是所在接口的子对象(向上转型)。

                  3)注入的接口对象有多种实例化的方式(只有实例过的对象才能在运行的时候真正的进行动作),new 对象,通过注解(这只是把实例对象的动作交给了框架),或者通过方法,从其他地方传入(构造方法里作为入参传入,只是为了在原对象实例的时候,注入的对象也已经实例,那么此对象可以执行相关操作)。

              

                

posted @ 2018-04-11 17:05  小小风思  阅读(125)  评论(0)    收藏  举报