天天看点

装饰设计模式图解

装饰设计模式(IO流中用的多)

  装饰设计模式的概述

    装饰模式就是使用被装饰类的一个子类的实例,在客户端将这个子类的实例交给装饰类。是继承的替代方案。

  优点

    使用装饰模式,可以提供比继承更灵活的扩展对象的功能,它可以动态的添加对象的功能,并且可以随意的组合这些功能。

  缺点

    正因为可以随意组合,所以就可能出现一些不合理的逻辑。

  示例代码如下:

    // 复杂的装饰(多重装饰)

    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

    BufferedWriter bw = new BufferedWriter((new OutputStreamWriter(System.out)));

    // 简单的装饰

    Scanner sc = new Scanner(System.in);

装饰设计模式图解

Copyright ©2018-2019

【转载文章务必保留出处和署名,谢谢!】