1. 程式人生 > >Java中的權限修飾符private、protected、public

Java中的權限修飾符private、protected、public

它的 pub round 子類 成員變量 外部類 adding 對象 friend

java中的修飾符分類:

  • 權限修飾符: private, default, protected, public
  • 狀態修飾符: static, final
  • 抽象修飾符: abstract

權限修飾符

我們來看看四種權限修飾符的權限大小
(註意:沒有default這個關鍵字,它就是代表默認的意思,即什麽修飾符也不加)
一般,默認的可見性就是包可見性(package visibility)
1. public修飾符
具有最大的訪問權限,可以訪問任何一個CLASSPATH下的類,接口、異常等。它往往對於對外的情況,
也就是對象或類對外的一種接口形式。
2. default
有時候也稱friendly,它是針對本包訪問而設計的,任何處於本包下的類,接口,異常等,都可以互相訪問,

即使是父類沒有用protected修飾的成員也可以。
3. protected修飾符
它的主要作用就是保護子類的。它的含義在於子類可以使用它修飾的成員,其他的不可以,它相當於
傳遞給子類的一種繼承的東西。
4. private修飾符
它的訪問權限僅限於類的內部,是一種封裝(Java的三大特點之一,繼承,封裝和多態)的體現。例如,
大多數的成員變量都可以修飾為private,它們不希望被其他任何外部類訪問。

看看這個表

本類 同一個包下(子類和無關類) 不同包下(子類) 不同包下(無關類)
public 可見 可見 可見 可見
protected 可見 可見 可見 不可見
default 可見 可見 不可見 不可見
private 可見 不可見 不可見 不可見

Java中的權限修飾符private、protected、public