王者荣耀之「装饰者模式」--读后感

适用场景

  1. 最大的作用:不想或者不能改变原有的类,而给原有类扩展功能

这就是「装饰者模式」,在不必改变原类文件(英雄类)和使用继承的情况下,动态地扩展一个对象(李白)的功能。它是通过创建一个包装对象(buff类:红buff,篮buff, ...),也就是装饰来包裹真实的对象。

比如新增一个大小写转换的InputStream装饰所有的InputStream,不可能直接在InputStream中增加方法,而是可以使用装饰者模式。

特点

  1. 装饰类是继承(或实现)构件类的,让人看起来装饰类就是构件类本身一样(都是Component的子类,只不过其成员变量是Component的子类,作为构造参数的入参),甚至分不出来它是装饰类

UML图
装饰者模式
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容