初考-統計資料處理大意110 年第 26 題單選題
物件導向開發理論中,類別中的成員(即屬性與方法)都可設定其存取權限,對於存取權限的描述,下列那一項錯誤?
Apublic 的成員所有的類別都可以存取
Bprivate 的成員只有該類別可以存取
Cprotected 的成員只有該物件可以存取正確答案
Dprotected 的成員子類別可以存取
C正確答案
存取修飾子三層級:public(全開)、private(類別內)、protected(類別+子類別)。C 把 protected 說成「只有該物件」是錯的。
為什麼答案是 C
錯誤!protected(受保護)成員的存取範圍是「該類別本身 + 其子類別」,不是「只有該物件」。選項把 protected 講得比 private 還窄,概念顛倒。
載入中…
完整詳解
Pro · 無限重點 存取修飾子三層級:public(全開)、private(類別內)、protected(類別+子類別)。C 把 protected 說成「只有該物件」是錯的。
看到 protected → 想「自己家 + 繼承的小孩」都能用,不是只有自己。
逐選項分析
A✕
public(公開)成員對外完全開放,任何類別、任何地方都可以存取,敘述正確。
B✕
private(私有)成員封裝在類別內部,只有該類別自己的方法能存取,連子類別都不行,敘述正確。
C✓ 正確
錯誤!protected(受保護)成員的存取範圍是「該類別本身 + 其子類別」,不是「只有該物件」。選項把 protected 講得比 private 還窄,概念顛倒。
D✕
protected 最大特色就是允許子類別(繼承類別)存取,同時對外部類別隱藏,敘述正確。
物件導向三大存取修飾子
| 修飾子 | 本類別 | 子類別 | 外部類別 |
|---|
| public | ✅ | ✅ | ✅ |
| protected | ✅ | ✅ | ❌ |
| private | ✅ | ❌ | ❌ |
C 選項把 protected 的範圍講得比 private 還小(「只有該物件」聽起來超窄)。實際上三者範圍是 public > protected > private,protected 的關鍵就是「子類別也能用」,千萬別記反。