民國104年 第3梯次 數位電子甲級 學科
第1題
在C + + 程式語言中,下述何者正確
題目
在C + + 程式語言中,下述何者正確
- (1) 「基礎類別」中的「資料成員」若欲僅供其「衍生類別」所用,而不為其他類別使用,則應宣告為「p r i v a t e 」
- (2) 被繼承的類別為「衍生類別」 ( d e r i v e d c l a s s ) ,而經由繼承的關係所定義出的類別為「基礎類別」( b a s e c l a s s )
- (3) 「p r i v a t e 」和「p r o t e c t e d 」的作用相同,因而兩者是可以混用的
- (4) 「基礎類別」中的「資料成員」 若欲僅供其「衍生類別」所用,而不為其他類別使用,則應宣告為「p r o t e c t e d 」
官方答案
(4) 「基礎類別」中的「資料成員」 若欲僅供其「衍生類別」所用,而不為其他類別使用,則應宣告為「p r o t e c t e d 」
解析
C++ 類別成員的存取權限中,private 僅供本類別使用,衍生類別無法直接存取;protected 則可供本類別及衍生類別使用,但不開放給其他類別。因此基礎類別若希望資料成員只給衍生類別使用,應宣告為 protected。選項2把基礎類別與衍生類別的名稱說反;private 與 protected 作用不同,不能混用。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。