Java語言定義了public、protected、private、abstract、static和final這6常用修飾詞外還定義了5個不太常用的修飾詞,以下是對這11個Java修飾詞的介紹:
1.public
使用物件:類別、介面、成員
介紹:無論它所處在的套件定義在哪,該類別(介面、成員)都是可存取的
2.private
使用物件:成員
介紹:成員只可以在定義它的類別中被存取
3.static
使用物件:類別、方法、欄位、初始化函數
介紹:成名為static的內部類別是一個頂層類,它和包含類別的成員是不相關的。靜態方法是類別方法,是被指向到所屬的類別而不是類別的實例。靜態字段是類別字段,無論該字段所在的類別創建了多少實例,該字段只存在一個實例被指向到所屬的類別而不是類別的實例。初始化函數是在裝載類別時執行的,而不是在建立實例時執行的。
4.final
使用物件:類別、方法、欄位、變數
#介紹:被定義成final的類別不允許子類,不能覆寫(不應用於動態查詢),欄位值不允許被修改。
5.abstract
使用物件:類別、介面、方法
介紹:類別中包含沒有實作的方法,不能被實例化。如果是一個abstract方法,則方法體為空,該方法的實作在子類別中被定義,並且包含一個abstract方法的類別必須是一個abstract類別
6.protected
#使用物件:成員
介紹:成員只能在定義它的套件中被訪問,如果在其他套件中被訪問,則實作這個方法的類別必須是該成員所屬類別的子類別。
7.native
使用物件:成員
介紹:與操作平台相關,定義時並不定義其方法,方法的實作被一個外部的函式庫實作。
8.strictfp
使用物件:類別、方法
介紹:strictfp修飾的類別中所有的方法都隱藏了strictfp修飾詞,方法執行的所有浮點計算遵守IEEE 754標準,所有取值包括中間的結果都必須表示為float或double類型,而不能利用本地平台浮點格式或硬體提供的額外精度或表示範圍。
9.synchronized
使用物件:方法
介紹:對於一個靜態的方法,在執行之前jvm把它所在的類別鎖定;對於一個非靜態類別的方法,執行
前把某個特定物件實例鎖定。
10.volatile
使用物件:字段
介紹:因為非同步執行緒可以存取字段,所以有些最佳化操作是一定不能作用在字段上的。 volatile有時可以代替synchronized。
11.transient
使用物件:欄位
介紹:欄位不是物件持久狀態的一部分,不應該把欄位和物件一起串起。
以上是Java中的修飾詞有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!