普通考試
110年
[資訊處理] 計算機概要
第 23 題
在物件導向程式設計中,下列特性何者可以達到資訊隱藏(Information Hiding)的目的?
- A 封裝(Encapsulation)
- B 識別(Identity)
- C 繼承(Inheritance)
- D 多型(Polymorphism)
思路引導 VIP
想像你在設計一個 ATM 自動提款機:你希望使用者能透過介面領錢,但絕對不希望他們能直接看到或修改機器內部的餘額計算邏輯。在程式設計中,如果你想把「內部的運作細節」包裹起來,只留下一個「對外的操作窗口」,這種像是在外面加了一層保護殼的行為,會讓你聯想到哪一個專業術語?
🤖
AI 詳解
AI 專屬家教
專業點評
- 大力肯定:做得好!精確掌握了物件導向(OOP)的核心基石。對於資訊管理背景的學生來說,理解如何保護資料完整性是非常關鍵的一步。
- 觀念驗證:封裝(Encapsulation) 的核心精神在於將「資料(屬性)」與「操作資料的方法」結合在一起,並透過存取控制(如
private或protected)限制外部元件直接存取內部細節。這不僅實踐了資訊隱藏,更降低了系統模組間的耦合度。
▼ 還有更多解析內容
物件導向封裝特性
💡 封裝將資料與操作包裝,隱藏內部實作並保護資料安全。
| 比較維度 | 封裝 (Encapsulation) | VS | 繼承 (Inheritance) |
|---|---|---|---|
| 核心目的 | 資訊隱藏、保護內部資料 | — | 程式碼重複使用、擴充功能 |
| 實現方式 | 存取修飾詞(private等) | — | 子類別繼承父類別 |
| 主要好處 | 高內聚、降低耦合度 | — | 建立層級架構、減少冗餘代碼 |
💬封裝聚焦於隱藏實作細節,繼承聚焦於階層架構與功能重用。