内容簡介
《Java設計模式》面向有一定Java語言基礎和一定編程經驗的讀者,重點探讨在Java程序設計中怎樣使用著名的23個設計模式。《Java設計模式》的目的是讓讀者不僅學習怎樣在軟件設計中使用好設計模式,更重要的是讓讀者通過學習使用設計模式深刻地理解面向對象的設計思想,以便更好地使用面向對象語言解決設計中的諸多問題。
目錄
第1章設計模式簡介
1.1什麼是設計模式
1.2設計模式的起源
1.3“23個設計模式”的來源
1.4學習設計模式的重要性
1.5合理使用模式
1.6什麼是框架
1.7使用Java描述模式的必要性
1.8設計模式資源
第2章面向對象的幾個基本原則
2.1面向抽象原則
2.2開閉原則
2.3多用組合少用繼承原則
2.4高内聚低耦合原則
第3章UML類圖簡介
3.1類
3.2接口
3.3泛化關系
3.4關聯關系
3.5依賴關系
3.6實現關系
3.7注釋
第4章命令模式
4.1概述
4.2模式的結構與使用
4.3命令接口中的撤銷方法
4.4宏命令
4.5命令模式的優點
4.6适合使用命令模式的情景
4.7命令模式與JavaAWT事件
4.8應用舉例——模拟小電器
第5章觀察者模式
5.1概述
5.2模式的結構與使用
5.3觀察者模式中的“推”數據與“拉”數據
5.4觀察者與多主題
5.5觀察者模式的優點
5.6适合使用觀察者模式的情景
5.7JavaAPI中的Observable類與Observer接口
5.8應用舉例——統計文本中的單詞和數字
第6章裝飾模式
6.1概述
6.2模式的結構與使用
6.3使用多個裝飾者
6.4裝飾模式相對繼承機制的優勢
6.5裝飾模式的優點
6.6适合使用裝飾模式的情景
6.7JavaIO與裝飾模式
6.8應用舉例——讀取單詞表
第7章策略模式
7.1概述
7.2模式的結構與使用
7.3策略模式的優點
7.4适合使用策略模式的情景
7.5策略模式相對繼承機制的優勢
7.6應用舉例——加密、解密文件
第8章适配器模式
8.1概述
8.2模式的結構與使用
8.3适配器模式的優點
8.4适合适配器模式的情景
8.5單接口适配器
8.6應用舉例——Iterator接口與Enumeration接口
第9章責任鍊模式
9.1概述
9.2模式的結構與使用
9.3責任鍊模式的優點
9.4适合使用責任鍊模式的情景
9.5應用舉例——計算階乘
第10章外觀模式
10.1概述
10.2模式的結構與使用
10.3外觀模式的優點
10.4适合使用外觀模式的情景
10.5應用舉例——解析文件
第11章叠代器模式
11.1概述
11.2模式的結構與使用
11.3叠代器的next()方法與集合的get(intindex)方法
11.4叠代器模式的優點
11.5适合使用叠代器模式的情景
11.6應用舉例——使用多個集合存儲對象
第12章中介者模式
12.1概述
12.2模式的結構與使用
12.3中介者模式的優點
12.4适合使用中介者模式的情景
12.5使用中介者模式處理組件交互
12.6應用舉例——模拟交通信号燈
第13章工廠方法模式
13.1概述
13.2模式的結構與使用
13.3Java集合框架與工廠模式
13.4工廠方法模式的優點
13.5适合使用工廠方法模式的情景
13.6應用舉例——創建藥品對象
第14章抽象工廠模式
14.1概述
14.2模式的結構與使用
14.3工廠方法模式的優點
14.4适合使用抽象工廠模式的情景
14.5應用舉例——存款憑證
第15章生成器模式
15.1概述
15.2模式的結構與使用
15.3生成器模式的優點
15.4适合使用生成器模式的情景
15.5應用舉例——日曆牌
第16章原型模式
16.1概述
16.2java.lang.Object類的clone方法
16.3Serializable接口與克隆對象
16.4模式的結構與使用
16.5原型模式的優點
16.6适合原型模式的情景
16.7應用舉例——克隆容器
第17章單件模式
17.1概述
17.2模式的結構與使用
17.3單件模式的優點
17.4适合單件模式的情景
17.5應用舉例——多線程争冠軍
第18章組合模式
18.1概述
18.2模式的結構與使用
18.3組合模式的優點
18.4适合組合模式的情景
18.5應用舉例——蘋果樹的重量及蘋果的價值
第19章橋接模式
19.1概述
19.2模式的結構與使用
19.3橋接模式的優點
19.4适合橋接模式的情景
19.5應用舉例——制作電視節目
第20章狀态模式
20.1概述
20.2模式的結構與使用
20.3狀态切換
20.4共享狀态
20.5狀态模式的優點
20.6适合狀态模式的情景
20.7應用舉例——模拟咖啡自動售貨機
第21章模闆方法模式
21.1概述
21.2模式的結構與使用
21.3鈎子方法
21.4模闆方法模式的優點
21.5适合模闆方法模式的情景
21.6應用舉例——數據庫的連接與記錄查詢
第22章代理模式
22.1概述
22.2模式的結構與使用
22.3遠程代理
22.4虛拟代理
22.5代理模式的優點
22.6适合代理模式的情景
22.7應用舉例——使用遠程窗口閱讀文件
第23章享元模式
23.1概述
23.2模式的結構與使用
23.3享元模式的優點
23.4适合享元模式的情景
23.5應用舉例——創建化合物
第24章訪問者模式
24.1概述
24.2模式的結構與使用
24.3雙重分派
24.4訪問者模式的優點
24.5适合訪問模式的情景
24.6應用舉例——評價體檢表
第25章備忘錄模式
25.1概述
25.2模式的結構與使用
25.3使用内部類創建備忘錄
25.4備忘錄模式的優點
25.5适合使用備忘錄模式的情景
25.6應用舉例——使用備忘錄實現undo操作
第26章解釋器模式
26.1概述
26.2解釋器模式的結構與使用
26.3解釋器模式的優點
26.4适合使用解釋器模式的情景
26.5應用舉例——簡單的英文翻譯器
第27章模式分類
27.1創建型模式
27.2行為型模式
27.3結構型模式
參考文獻
……