• 面试题-Java设计模式举例


    面试题-Java设计模式举例

    1、适配器模式

      涉及三个角色:Target目标接口、Adaptee源角色、Adapter适配器;Adapter将源接口适配到目标接口,继承源接口,实现目标接口

      Java I/O操作中很多这样的例子:

        InputStreamReader 将 InputStream 适配到 Reader;需要继承InputStream实现Reader。

        OutputStreamWriter 将 OutputStream 适配到 Writer;

        StringReader 将 String 类适配到 Reader;

    2、装饰器模式

      涉及到三个角色:Component抽象组件角色、ConcreteComponent实现抽象组件的所有功能、Decorator装饰器角色,它持有一个Component对象实例的引用,定义一个与抽象组件一致的接口、ConcreteDecorator具体的装饰器实现者。

      Java I/O中的装饰器模式:FilterInputStream类;

        

      注:适配器与装饰器模式都属于包装模式,他们看似都是起到包装一个类或者对象的引用,但是使用他们的目的不一样;适配器模式的意义是通过改变接口来达到重复使用的目的,装饰器模式是保持原有接口,增强原有对象的功能。

  • 相关阅读:
    Codeforces Round #407 (Div. 2)A B C 水 暴力 最大子序列和
    Codeforces Round #358 (Div. 2) A B C 水 水 dfs序+dp
    51nod 1225 数学
    HDU 4584 splay
    bzoj 1588 平衡树 splay
    HDU 4722 数位dp
    Kubernetes 自动伸缩 auto-scaling
    转发一篇能看懂的关于ingress的说明
    Http 安全检测
    mdadm 软RAID
  • 原文地址:https://www.cnblogs.com/liun1994/p/6412721.html
Copyright © 2020-2023  润新知