B3 物件導向程式設計
B3 物件導向程式設計(Object-Oriented Programming, OOP)是用「物件」組織程式的方法:把資料(屬性)與操作資料的行為(方法)包在一起,讓大型程式更容易設計、重複使用與維護。SL 學習單一類別的設計與封裝,HL 再學多個類別之間的繼承、多型、組合與設計模式。
本單元頁面
| 子題 | 頁面 | 程度 |
|---|---|---|
| B3.1 | 單一類別的 OOP | SL HL |
| B3.2 | 多個類別的 OOP | HL only |
本單元重點
- 類別與物件、屬性與方法、建構子。
- 封裝:私有屬性、getter 與 setter。
- 靜態與實例成員。
- UML 類別圖。
- (HL)繼承、多型、抽象類別、組合與聚合、常見設計模式。
推薦影音
物件導向程式設計簡介(Programming with Mosh)
簡述:Mosh 用幾分鐘說明 OOP 的四大支柱:封裝、抽象、繼承、多型,以及它們各自解決了什麼問題,是本單元最好的總覽。
單元總複習
總複習:OOP 有什麼好處?
相較於只用函式與全域變數,說明使用 OOP 開發一個學校管理系統的三個好處。
參考答案
(1) 封裝:學生資料只能透過方法修改,避免其他程式碼隨意改壞資料;(2) 重複使用:同一個 Student 類別可建立上千個物件,HL 還能用繼承重用程式碼;(3) 容易維護與分工:每個類別負責一個概念,修改一個類別不影響其他部分,團隊可以分工開發不同類別。