继承,装饰者模式,动态代理

对象增强的手段:

继承

装饰者模式

动态代理

继承:

特点:1,增强的内容是死的,不能修改,如果是隐身能力,修改后超人类就成了隐身超人类

           2,被增强的对象也是死的,继承超人类,只能增强超人儿子的实力,其本身还是超人分支

装饰者模式:

特点:1,增强的内容是死的,不能修改,如果是隐身能力,修改后超人类就成了隐身超人类

           2,被增强的对象是可以切换的,装饰超人,就是隐身超人类,装饰蜘蛛侠,就是隐身蜘蛛侠类,比较灵活

动态代理:

特点:1,增强的内容是是可以切换的(service)任意service

           2,被增强的对象是可以切换的(事务处理)

           用动态代理就可以把任意的service添加事务处理,这样事务处理代码和Service代码就可以分开写(AOP思想),通过反射原理还能在配置文件中组装

应用场景例如:

           1,IO流中的BufferedInputStream:它是装饰流,创建此流需要给其一个底层对象(输入流),不管给它什么输入流,它都会为其添加缓冲区

应用条件例如:当不知道被增强对象的具体类型时,可以使用!

装饰模式使用口诀:

           1,是你(实现/继承增强的父类接口/类)还有你(底层对象,即创建要增强的父类型的引用,构造方法中需带参,参数类型为增强的父类型),一切拜托你(其父类型中无需增强的方法保持不变,调用原有方法返回即可。而在要增强的方法里需添加增强的内容)

动态代理:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值