1. 程序基本結構
一共三種,任何算法均由這三種結構組成:
- 順序結構
- 選擇結構
- 循環結構
- 當型
- 直到型
2. 結構化程序設計
-
結構化程序設計原則:
- 主張按功能來分析系統需求
- 自頂向下,逐步求精,模塊化
-
結構化設計步驟:
- 結構化分析(SA)
- 結構化設計 (SD)
- 結構化編程(SP)
-
侷限性:
- 設計不直觀,跟人類思維模式不同。(人類是按照一個個具體對象認識世界的,比如一隻狗,一座山,而不是按照事件認識世界,比如如何蓋房子)
- 適應性差,擴展性差。修改時,常常牽一髮動全身。
3. 面向對象
類 = 成員變量 + 方法
- 類是一類對象的抽象
- 成員變量設計數據
- 方法設計對數據的操作
3.1 面向對象程序設計步驟
- 面向對象分析 (OOA)
- 面向對象設計 (OOD)
- 面向對象編程 (OOP)
3.2 面向對象基本特徵
- 封裝
- 封裝實現了將數據操作細節隱藏起來
- 繼承
- 繼承實現了有效的複用。子類有效的繼承父類的方法。獲取子類的屬性
- 多態
- 子類重寫父類的方法。雖然可以接受父類對象,但是執行時表現的是子類的特性。
另外,抽象也是一種很重要的特徵。但是這一特性幾乎存在於任何一種編程語言。
繼承與多態幾乎可以作爲判斷一門語言是否是面向對象編程語言的判斷標準。
Reference
- 李剛, 瘋狂java講義(第5版)