Java 中的受保護的訪問修飾符


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

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

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

示例

The following parent class uses protected access control, to allow its child class override openSpeaker() method -
class AudioPlayer {
   protected boolean openSpeaker(Speaker sp) {
      // implementation details
   }
}
class StreamingAudioPlayer {
   boolean openSpeaker(Speaker sp) {
   // implementation details
   }
}

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


更新於:2020-02-24

631 瀏覽次數

開啟您的職業生涯

完成該課程以獲得認證

入門
廣告