1. 程式人生 > >Java 修飾符總結

Java 修飾符總結

修飾符 分訪問修飾符 非訪問修飾符

  • 訪問修飾符

修飾符 當前類 同一包內 子孫類 其他包
public Y Y Y Y
protected Y Y Y N
default Y Y N N
private Y N N N

  • 非訪問修飾符
    1. static   變數:宣告獨立於物件的靜態變數,多個物件使用同一個變數   方法:宣告獨立於物件的靜態方法,不能使用類的非靜態變數

    2. final    變數: 只初始化一次、引用不可變、值可變  方法:可以繼承,不能修改 類:不能被繼承

    3. abstract 類: 不能被例項化,可以沒有抽象方法方法:無實現方法,直接用 ";" 結束

    4. synchronized 同一時間只能被一個執行緒訪問

    5. volatile 修飾的成員變數在每次被執行緒訪問時,都強制從共享記憶體中重新讀取該成員變數的值。
      而且,當成員變數發生變化時,會強制執行緒將變化值回寫到共享記憶體。這樣在任何時刻,兩個不同的執行緒總是看到某個成員變數的同一個值。

    6. Transient 序列化的物件包含被 transient 修飾的例項變數時,java 虛擬機器(JVM)跳過該特定的變數。