写在前面
设计模式,其实在一定程度上代表着最优解,最佳实践,由一部分开发人员根据经验总结而出的解决方案,分别针对不同的场景的最优解决方案。
在当前环境下,设计模式也被开发人员极为推崇,并且利用其解决众多的问题,所以,学习设计模式刻不容缓。
下面我们就来看一下“装饰者模式”。
装饰者模式,在Java中算的上是比较常用的设计模式了,其主要的作用就是提供了在现有的对象基础上添加新功能的解决方案,并且不影响原对象的特征。
使用场景
通常我们向新对象中加入一个功能时,需要其类继承父类或者实现相应的接口,但是随着种类的增多,和功能的特征增加,会使原对象变得比较臃肿,这个时候就可以使用装饰者模式来解决。
优缺点
装饰者模式的优点就是装饰类和被装饰者可以独立进行实现,可以动态扩展装饰者类的诸多功能。
缺点就是随着功能的增多,装饰者模式也会出现多个功能类代码的增多。
注意事项
装饰者模式其实是可以在一定程度上替代继承特征的,但是大家也要记住,不要随意使用装饰者模式,只有当继承特征变得复杂时才可以考虑这种解决方案。