受保護訪問修改符在 Java 中的範圍是什麼?


當超類中宣告為受保護的變數、方法或建構函式只能被其他包中的子類或受保護成員類包中的任何類訪問時。

受保護的訪問修飾符不能應用於類和介面。方法、欄位可以宣告為受保護的,但是介面中的方法和欄位不能宣告為受保護的。

受保護的訪問允許子類使用輔助方法或變數,同時防止不相關的類嘗試使用它。

示例

以下父類使用受保護的訪問控制,以允許其子類覆蓋openSpeaker()方法 -

class AudioPlayer {
   protected boolean openSpeaker(Speaker sp) {
      // implementation details
   }
}
class StreamingAudioPlayer {
   boolean openSpeaker(Speaker sp) {
      // implementation details 8. Java MODIFIERS
   }
}

在此,如果將 openSpeaker() 方法定義為私有的,那麼除了 AudioPlayer 之外,其他任何類都無法訪問它。如果將它定義為公共的,那麼它將對所有外部世界都是可訪問的。但我們的意圖是僅將其方法暴露給子類,這就是我們使用受保護修飾符的原因。

更新時間: 30-7-2019

2K+ 瀏覽

開啟您的 職業生涯

完成課程以獲得認證

開始學習
廣告
© . All rights reserved.