Java 語言的類、屬性、方法各有哪些修飾符?簡述各修飾符的區別


1、 類的修飾符分為:可訪問控制符和非訪問控制符兩種。

可訪問控制符是:公共類修飾符 public

非訪問控制符有:抽象類修飾符 abstract ;最終類修飾符 final

      1、公共類修飾符 public : Java 語言中類的可訪問控制符只有一個: public 即公共的。每個 Java 程序的主類都必須是 public 類作為公共工具。供其它類和程序使用的應定義為 public 類。

      2 、抽象類修飾符 abstract :凡是用 abstract 修飾符修飾的類,被稱為抽象類。所謂抽象類是指這種類沒有具體對象的一種概念類。這樣的類就是 Java 語言的 abstract 類。

      3、最終類修飾符 final :當一個類不可能有子類時可用修飾符 final 把它說明為最終類。被定義為 final 的類通常是一些有固定作用、用來完成某種標准功能的類。

      4、類缺省訪問控制符:如果一個類沒有訪問控制符,說明它具有缺省的訪問控制符特性。此時,這個類只能被同一個包中的類訪問或引用。這一訪問特性又稱為包訪問性。

 

 

2 、屬性的控制修飾符也分為:可訪問控制符和非訪問控制符兩類。

可訪問控制符有 4 種:公共訪問控制符: public ;私有訪問控制符: private ;保護訪問控制符: protected ;私有保護訪問控制符: private protected

非訪問控制符有 4 種:靜態域修飾符: static ;最終域修飾符: final ;易失 ( 共享 ) 域修飾符: volatile ;暫時性域修飾符: transient

      1、公共訪問控制符 public :用 public 修飾的域稱為公共域。如果公共域屬於一個公共類,則可以被所有其它類所引用。由於 public 修飾符會降低運行的安全性和數據的封裝性,所以一般應減少 public 域的使用。

      2、私有訪問控制符 private : 用 private 修飾的成員變量 ( 域 ) 只能被該類自身所訪問,而不能被任何其它類 ( 包括子類 ) 所引用。

      3、保護訪問控制符 protected :用 protected 修飾的成員變量可以被三種類所引用:①該類自身;②與它在同一個包中的其它類;③在其它包中的該類的子類。使用修飾符 protected 的主要作用是允許其它包中它的子類來訪問父類的特定屬性。

      4、私有保護訪問控制符 private protected :用修飾符 private protected 修飾的成員變量可以被該類本身或該類的子類兩種類訪問和引用。

      5、靜態域修飾符 static :用 static修飾的成員變量僅屬於類的變量,而不屬於任何一個具體的對象,靜態成員變量的值是保存在類的內存區域的公共存儲單元,而不是保存在某一個對象的內存區間。任何一個類的對象訪問它時取到的都是相同的數據;任何一個類的對象修改它時 , 也都是對同一個內存單元進行操作。

      6、最終域修飾符 final :最終域修飾符 final 是用來定義符號常量的。一個類的域 ( 成員變量 ) 如果被修飾符 final 說明,則它的取值在程序的整個執行過程中都是不變的。

      7、易失 ( 共享 ) 域修飾符 volatile :易失 ( 共享 ) 域修飾符 volatile是用來說明這個成員變量可能被幾個線程所控制和修改。也就是說在程序運行過程中,這個成員變量有可能被其它的程序影響或改變它的取值。因此,在使用中要注意這種成員變量取值的變化。通常 volatile 用來修飾接受外部輸入的域。

      8、暫時性域修飾符 transient :暫時性域修飾符 transient 用來定義一個暫時性變量。其特點是:用修飾符transient 限定的暫時性變量,將指定 Java虛擬機認定該暫時性變量不屬於永久狀態,以實現不同對象的存檔功能。否則,類中所有變量都是對象的永久狀態的一部分,存儲對象時必須同時保存這些變量。

 

 

3 、方法的控制修飾符也分為:可訪問控制符和非訪問控制符兩類。

可訪問控制符有 4 種:公共訪問控制符: public ;私有訪問控制符: private ;保護訪問控制符: protected ;私有保護訪問控制符: private protected

非訪問控制符有 5 種:抽象方法控制符: abstract ;靜態方法控制符: static ;最終方法控制符: final ;本地方法控制符: native ;同步方法控制符: synchronized

      1、抽象方法控制符 abstract :用修飾符 abstract 修飾的方法稱為抽象方法。抽象方法是一種僅有方法頭,沒有方法體和操作實現的一種方法。

      2、靜態方法控制符 static :用修飾符 static 修飾的方法稱為靜態方法。靜態方法是屬於整個類的類方法;而不使用static 修飾、限定的方法是屬於某個具體類對象的方法。 由於 static方法是屬於整個類的,所以它不能操縱和處理屬於某個對象的成員變量,而只能處理屬於整個類的成員變量,即 static 方法只能處理 static的域。

      3、最終方法控制符 final :用修飾符 final修飾的方法稱為最終方法。最終方法是功能和內部語句不能更改的方法,即最終方法不能重載。這樣,就固定了這個方法所具有的功能和操作,防止當前類的子類對父類關鍵方法的錯誤定義,保證了程序的安全性和正確性。所有被 private 修飾符限定為私有的方法,以及所有包含在 final 類 ( 最終類) 中的方法,都被認為是最終方法。

      4、本地方法控制符 native :用修飾符 native 修飾的方法稱為本地方法。為了提高程序的運行速度,需要用其它的高級語言書寫程序的方法體,那么該方法可定義為本地方法用修飾符 native 來修飾;

      5、同步方法控制符 synchronized :該修飾符主要用於多線程共存的程序中的協調和同步。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM