面試題-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類;

    

  注:適配器與裝飾器模式都屬於包裝模式,他們看似都是起到包裝一個類或者對象的引用,但是使用他們的目的不一樣;適配器模式的意義是通過改變接口來達到重復使用的目的,裝飾器模式是保持原有接口,增強原有對象的功能。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM