最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java學(xué)習(xí)之局部變量、成員變量舉例詳解

 更新時(shí)間:2025年02月18日 10:16:51   作者:Code哈哈笑  
這篇文章主要介紹了Java中的成員變量和局部變量,包括它們的定義、特點(diǎn)、初始化、作用域和生命周期等,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

1. 什么是成員變量?什么是局部變量?

局部變量成員變量是兩種常見的變量類型,它們?cè)谧饔糜?、生命周期、初始化等方面有顯著的區(qū)別。理解這兩者的區(qū)別對(duì)于編寫清晰和高效的 Java 程序至關(guān)重要。

  • 創(chuàng)建局部變量,然后打印局部變量:

    public static void main(String[] args){
            String brand; // 品牌
            String color ;  // 顏色
            int memory;  // 內(nèi)存
            System.out.println("brand:"+ brand);
            System.out.println("color:"+ color);
            System.out.println("memory:"+ memory);
    
        }
    

    不初始化就會(huì)報(bào)錯(cuò)。

  • 創(chuàng)建一個(gè)類,在類中創(chuàng)建成員變量,然后創(chuàng)建對(duì)象,打印出對(duì)象的成員變量:

    public class Phone {
        String brand; // 品牌
        String color ;  // 顏色
        int memory;  // 內(nèi)存
    
    
        // 程序的開始
        public static void main(String[] args){
            Phone p = new Phone();
            System.out.println("brand:"+ p.brand);
            System.out.println("color:"+p.color);
            System.out.println("memory:"+p.memory);
    
        }
    }
    
    

    不初始化,而打印出了值。

通過上述的兩個(gè)測(cè)試,我們可以發(fā)現(xiàn),在類中創(chuàng)建的成員變量有默認(rèn)值,即,成員變量不用初始化就會(huì)有一個(gè)值,而局部變量必須手動(dòng)賦值。

2. 成員變量

2.1 定義和特點(diǎn)

成員變量是類中的字段(屬性),它們是類的組成部分。

成員變量有兩種類型

  • 實(shí)例變量 (Instance Variables):屬于類的實(shí)例(對(duì)象),每個(gè)對(duì)象有一份獨(dú)立的實(shí)例變量。
  • 類變量 (Class Variables):使用 static 關(guān)鍵字聲明,屬于類本身,而不是類的任何實(shí)例。

2.2 實(shí)例變量

  • 實(shí)例變量是類中定義的字段,每個(gè)類的實(shí)例(對(duì)象)都有自己的實(shí)例變量副本。
  • 實(shí)例變量在對(duì)象創(chuàng)建時(shí)被分配內(nèi)存,每個(gè)對(duì)象都有獨(dú)立的實(shí)例變量。
  • 實(shí)例變量具有默認(rèn)值:如果未顯式初始化,實(shí)例變量會(huì)根據(jù)其類型自動(dòng)賦予默認(rèn)值(例如,int 類型默認(rèn)為 0,boolean 默認(rèn)為 false,對(duì)象引用類型默認(rèn)為 null)。
  • 實(shí)例變量在類的實(shí)例化期間存在,當(dāng)對(duì)象被銷毀時(shí),實(shí)例變量也會(huì)被銷毀。

示例:

public class Example {
    private int x;  // 實(shí)例變量 默認(rèn)值為0

    public void printX() {
        System.out.println(x);  // 訪問實(shí)例變量
    }
}

在這個(gè)例子中,x 是實(shí)例變量。每當(dāng)你創(chuàng)建一個(gè) Example 對(duì)象時(shí),都會(huì)為每個(gè)對(duì)象分配一個(gè) x 變量,并且每個(gè)對(duì)象有自己的 x 值。

2.3 類變量

  • 類變量使用 static 關(guān)鍵字聲明,它們屬于類本身,而不是類的實(shí)例。
  • 類變量在類加載時(shí)就會(huì)被初始化,并且所有類的實(shí)例共享同一個(gè)類變量。
  • 類變量有默認(rèn)值,如果未顯式初始化,它們也會(huì)被賦予默認(rèn)值(與實(shí)例變量相同)。

示例:

public class Example {
    static int count;  // 類變量

    public void increment() {
        count++;  // 訪問類變量
    }
}

在這個(gè)例子中,count 是類變量。所有Example 類的實(shí)例共享同一個(gè) count 變量,類變量在類加載時(shí)初始化。

2.4 成員變量的默認(rèn)值

數(shù)據(jù)類型默認(rèn)值
byte0
char‘\u0000’
short0
int0
long0L
booleanfalse
float0.0f
double0.0
referencenull

3. 局部變量

3.1 定義和特點(diǎn)

  • 局部變量是在方法、構(gòu)造方法、或者代碼塊內(nèi)定義的變量。
  • 局部變量的作用域僅限于它們被聲明的代碼塊或方法。
  • 局部變量沒有默認(rèn)值,必須在使用前初始化。
  • 局部變量的生命周期從其定義開始,到方法或者代碼塊執(zhí)行完畢時(shí)結(jié)束。換句話說,局部變量只存在于方法或代碼塊的執(zhí)行過程中,一旦方法返回或代碼塊執(zhí)行完畢,局部變量會(huì)被銷毀。

3.2 示例和說明

public class Example {
    public void myMethod() {
        int x = 10;  // x 是局部變量 必須要被初始化
        System.out.println(x);  // 可以使用局部變量
    }
}

在這個(gè)例子中,x 是局部變量,它只在 myMethod() 方法內(nèi)部存在。當(dāng)方法執(zhí)行完畢,x 會(huì)被銷毀。

關(guān)鍵特點(diǎn)

  • 作用域:局部變量的作用域限制在其所在的方法、構(gòu)造方法或代碼塊內(nèi)。
  • 初始化:局部變量在使用前必須被顯式初始化。否則,編譯器會(huì)報(bào)錯(cuò)。
  • 生命周期:局部變量的生命周期是方法或者代碼塊的執(zhí)行周期,即方法/代碼塊開始執(zhí)行時(shí)創(chuàng)建,結(jié)束時(shí)銷毀。

注意事項(xiàng)

  • 局部變量的作用域僅限于方法內(nèi),因此它不能被方法外部訪問。
  • 局部變量不能聲明為 static,因?yàn)樗纳芷谂c方法的調(diào)用有關(guān),而不是與類的實(shí)例或類本身的生命周期有關(guān)。

4. 局部變量 vs 成員變量

特性局部變量成員變量 (實(shí)例變量/類變量)
定義位置方法、構(gòu)造器、代碼塊中類中,方法外
初始化必須顯式初始化會(huì)自動(dòng)初始化為默認(rèn)值(實(shí)例變量/類變量)
作用域僅限于所在的方法/代碼塊實(shí)例變量:限于對(duì)象;類變量:限于類
生命周期方法/代碼塊執(zhí)行期間實(shí)例變量:對(duì)象的生命周期;類變量:類的生命周期
訪問修飾符無法使用訪問修飾符可以使用訪問修飾符 public、private 等
是否與類相關(guān)實(shí)例變量與對(duì)象相關(guān);類變量與類本身相關(guān)
靜態(tài)關(guān)鍵字不可以是 static類變量必須是 static

局部變量:只在方法、構(gòu)造方法、或代碼塊內(nèi)有效,必須顯式初始化,并且生命周期僅限于方法或代碼塊執(zhí)行時(shí)。

成員變量:包括實(shí)例變量和類變量,實(shí)例變量屬于對(duì)象,類變量屬于類,成員變量有默認(rèn)值,生命周期較長(zhǎng),且可以使用訪問修飾符來控制訪問權(quán)限。

總結(jié)

到此這篇關(guān)于Java學(xué)習(xí)之局部變量、成員變量的文章就介紹到這了,更多相關(guān)Java局部變量、成員變量?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JavaCV實(shí)現(xiàn)將視頻以幀方式抽取

    JavaCV實(shí)現(xiàn)將視頻以幀方式抽取

    這篇文章主要為大家詳細(xì)介紹了JavaCV實(shí)現(xiàn)將視頻以幀方式抽取,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • java轉(zhuǎn)樹形結(jié)構(gòu)工具類詳解

    java轉(zhuǎn)樹形結(jié)構(gòu)工具類詳解

    這篇文章主要為大家詳細(xì)介紹了java轉(zhuǎn)樹形結(jié)構(gòu)工具類,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • 利用Java實(shí)現(xiàn)在PDF中添加工具提示

    利用Java實(shí)現(xiàn)在PDF中添加工具提示

    這篇文章主要介紹了如何通過Java在PDF中添加工具提示,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定的參考價(jià)值,感興趣的可以學(xué)習(xí)一下
    2022-01-01
  • SpringBoot中的雙數(shù)據(jù)源配置過程

    SpringBoot中的雙數(shù)據(jù)源配置過程

    文章介紹了如何配置Oracle和PostgreSQL數(shù)據(jù)源,并使用JdbcTemplate進(jìn)行數(shù)據(jù)庫(kù)操作,重點(diǎn)包括數(shù)據(jù)源配置、JdbcTemplate配置以及不同數(shù)據(jù)源的包路徑設(shè)置
    2026-01-01
  • 解決javac不是內(nèi)部或外部命令,也不是可運(yùn)行程序的報(bào)錯(cuò)問題

    解決javac不是內(nèi)部或外部命令,也不是可運(yùn)行程序的報(bào)錯(cuò)問題

    在學(xué)著使用Java的命令行來編譯java文件的時(shí)候,遇到了這個(gè)問題,本文主要介紹了解決javac不是內(nèi)部或外部命令,也不是可運(yùn)行程序的報(bào)錯(cuò)問題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • JAVA中List.addAll的基本語法與用法詳解

    JAVA中List.addAll的基本語法與用法詳解

    這篇文章主要給大家介紹了關(guān)于JAVA中List.addAll的基本語法與用法的相關(guān)資料,需要的朋友可以參考下
    2024-06-06
  • maven自動(dòng)將源碼打包并發(fā)布的實(shí)現(xiàn)步驟

    maven自動(dòng)將源碼打包并發(fā)布的實(shí)現(xiàn)步驟

    maven-source-plugin 提供項(xiàng)目自動(dòng)將源碼打包并發(fā)布的功能,在需要發(fā)布源碼項(xiàng)目的 pom.xml 文件中添加即可,本文就來介紹一下如何設(shè)置,感興趣的可以了解一下
    2023-11-11
  • IDEA Maven源修改為國(guó)內(nèi)阿里云鏡像的正確方式

    IDEA Maven源修改為國(guó)內(nèi)阿里云鏡像的正確方式

    為了加快 Maven 依賴的下載速度,可以將 Maven 的中央倉(cāng)庫(kù)源修改為國(guó)內(nèi)的鏡像,比如阿里云鏡像,以下是如何在 IntelliJ IDEA 中將 Maven 源修改為阿里云鏡像的詳細(xì)步驟,感興趣的同學(xué)可以參考閱讀一下
    2024-09-09
  • 詳解Elasticsearch如何實(shí)現(xiàn)簡(jiǎn)單的腳本排序

    詳解Elasticsearch如何實(shí)現(xiàn)簡(jiǎn)單的腳本排序

    Elasticsearch?是位于?Elastic?Stack?核心的分布式搜索和分析引擎,可以為所有類型的數(shù)據(jù)提供近乎實(shí)時(shí)的搜索和分析。本文主要介紹了Elasticsearch如何實(shí)現(xiàn)簡(jiǎn)單的腳本排序,感興趣的可以了解一下
    2023-01-01
  • 淺入淺出的講解Spring循環(huán)依賴問題

    淺入淺出的講解Spring循環(huán)依賴問題

    循環(huán)依賴其實(shí)就是循環(huán)引用,也就是兩個(gè)或則兩個(gè)以上的bean互相持有對(duì)方,最終形成閉環(huán),下面這篇文章主要給大家介紹了關(guān)于Spring循環(huán)依賴問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-10-10

最新評(píng)論

云和县| 荃湾区| 深圳市| 德兴市| 周口市| 张掖市| 晋城| 浮山县| 静安区| 富裕县| 凤城市| 时尚| 苗栗市| 长白| 观塘区| 行唐县| 铁岭县| 同仁县| 呈贡县| 汕头市| 屯昌县| 唐河县| 扎赉特旗| 中阳县| 安岳县| 福安市| 阿瓦提县| 南江县| 海淀区| 松潘县| 扎兰屯市| 小金县| 宣武区| 金溪县| 牙克石市| 淮滨县| 长阳| 于都县| 和田市| 无锡市| 湘阴县|