Decorator Design Pattern(2)I/O Stream API by Michael | CodeData
top

Decorator Design Pattern(2)I/O Stream API

分享:

Decorator Design Pattern(1)Handsome & Handsome 早餐店 << 前情

一些你應該經常使用的Java SE API

Java在輸出入串流採用一種很特殊的設計方式,你通常會這樣作:

decorator_02_01

上列的範例程式片段的目的其實很單純,只是把一個文字檔案的內容讀出來,然後顯示到螢幕上而已。那為什麼要寫成這麼複雜?

decorator_02_02

解密任務

在這樣的串流架構下,輸出入應用就非常靈活了。下列是一個很好的應用:

decorator_02_03

在沒有特別加入解密前的處理前,會像這樣:

decorator_02_04

你可能會很直覺的想到要使用下列的作法來處理解密的動作:

decorator_02_05

不過在的串流架構下,你應該這樣來思考這個問題:

decorator_02_06

根據上列的設計,你就可以把處理解密串流的類別實作出來:

decorator_02_07

下列是使用「DeEncryptInputStream」的測試範例:

decorator_02_08

該回到早餐店了

雖然串流處理跟早餐架構設計好像沒什麼關係,不過在你的腦海中可能出現這個畫面了:

decorator_02_09

後續 >> Decorator Design Pattern(3)套用 Decorator Pattern

分享:
按讚!加入 CodeData Facebook 粉絲群

相關文章

留言

留言請先。還沒帳號註冊也可以使用FacebookGoogle+登錄留言

關於作者

張益裕。目前的工作是講師與作者,專長是教育訓練課程規劃、教材編製與課程推廣,技術書籍與專欄寫作。涵蓋的領域有OOAD、Java程式設計、JavaFX、Java Embedded、Android與SQL。已出版電子書Google Play圖書Pubu

熱門論壇文章

熱門技術文章