java類修飾符,Java 類修飾符

本文目錄一覽:

在java中一個類的修飾符有哪些

一:訪問修飾符:

1.省略訪問修飾符

具有默認的訪問特性,即具有包訪問特性,只能被同一個包中的類使用。

2.public訪問修飾符

用於說明類和類的成員的訪問權限。這種類叫公有類。在一個文件中只能有一個public類型的類。

例如:Rect和UseImport兩個類,分別在兩個不同的包中。順便回顧一下不同類要用import導入。(哎,一直就沒記住)

//Rect.java

pacakage my;

public class Rect

{

private int a,b;

public void init(int len,int width)

{

a=len;

b=width;

}

public int area()

{

return a*b;

}

}

//UseImport.java

import.my.*;//導入my 包的所有類

public class UseImport

{

public static void main(string[] args)

{

Rect x=new Rect();

x.init(2,3);

System.out.println(“矩形面積為:”+x.area());

}

}

3.private

用private修飾的類成員成為私有成員,只能在聲明該成員的類中使用,不能在類外使用。一般通過本類中公有方法進行訪問。

4.protected

protected修飾的類成員為保護成員,可以被三種類使用,分別是該類本身,該類的所有子類,該類同包的其他類,該類的子類。

5.private protected

私有保護成員。可被兩種類使用。分別是:該類本身和該類的所有子類。

二:特徵修飾符

1.abstract:抽象

修飾類為抽象類,修飾方法為抽象方法。只要類中有抽象方法,就必須定義為抽象類。抽象方法只能聲明,不能實現。但是可以在其子類中對抽象方法進行實現。抽象類中也可以包含非抽象方法。

2.final:最終

修飾的類為終止類,不能有子類。修飾變量為終止變量,只可賦值一次。修飾方法為終止方法,不能在子類中更改。如Socket、ServerSocket等都是final類,防止黑客派生子類進行破壞。同時,final與abstract是相互矛盾的。

3.static:靜態

靜態成員無需通過對象調用,可以直接通過類名直接調用。

public class RectArea//輸出6 和 12

{

public static void main(String[] args)

{

System.out.println(area(2,3));

System.out.println(area(3,4));

}

static void area(int a,int b)

Java修飾符都有什麼,請詳細解答下?

Java語言提供了很多修飾符,主要分為以下兩類:

1、訪問修飾符;

2、非訪問修飾符。

(視頻教程推薦:java視頻教程)

訪問控制修飾符

Java中,可以使用訪問控制符來保護對類、變量、方法和構造方法的訪問。Java 支持 4 種不同的訪問權限。

default (即默認,什麼也不寫): 在同一包內可見,不使用任何修飾符。使用對象:類、接口、變量、方法。

private : 在同一類內可見。使用對象:變量、方法。 注意:不能修飾類(外部類)

public : 對所有類可見。使用對象:類、接口、變量、方法

protected : 對同一包內的類和所有子類可見。使用對象:變量、方法。 注意:不能修飾類(外部類)。

非訪問修飾符

為了實現一些其他的功能,Java 也提供了許多非訪問修飾符,如下:

static 修飾符,用來修飾類方法和類變量。

final 修飾符,用來修飾類、方法和變量,final 修飾的類不能夠被繼承,修飾的方法不能被繼承類重新定義,修飾的變量為常量,是不可修改的。

abstract 修飾符,用來創建抽象類和抽象方法。

synchronized 和 volatile 修飾符,主要用於線程的編程。

java的接口、類、屬性、方法各有哪些修飾符

1、

接口的修飾符只有:public

2、

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

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

public

非訪問控制符有:抽象類修飾符

abstract

;最終類修飾符

final

1、公共類修飾符public:

Java

語言中類

的可訪問控制符只有一個:

public

即公共的。每個

Java

程序的主類都必須是

public

類作為公共工具供其它類和程序使用的應定義為

public

類。

2

、抽象類修飾符abstract:凡是用

abstract

修飾符修飾的類,被稱為抽象類。所謂抽象類是指這種類沒有具體對象的一種概念類。這樣的類就是

Java

語言的

abstract

類。

3、最終類修飾符final:當一個類不可能有子類時可用修飾符

final

把它說明為最終類。被定義為

final

的類通常是一些有固定作用、用來完成某種標準功能的類。

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

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

可訪問控制符有

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

虛擬機認定該暫時性變量不屬於永久狀態,以實現不同對象的存檔功能。否則,類中所有變量都是對象的永久狀態的一部分,存儲對象時必須同時保存這些變量。

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

可訪問控制符有

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

:該修飾符主要用於多線程共存的程序中的協調和同步。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/242658.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:51
下一篇 2024-12-12 12:51

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論