區域性變數和成員變數的區別

2021-10-01 22:37:04 字數 587 閱讀 7583

區域性變數和成員變數的區別?

1)在類中的位置不同

成員變數:成員位置—在類中,方法外定義的變數

區域性變數:在方法定義中,或者方法宣告上的變數

2)在記憶體中的位置也不同

成員變數:在堆記憶體中

區域性變數:在棧記憶體中

3)生命週期

成員變數:隨著物件的建立而存在,隨著物件的**而消失

區域性變數:隨著方法呼叫而存在,隨著方法的呼叫完畢而消失

4)初始化不同

成員變數:跟物件相關的,描述乙個物件的屬性(成員變數存在乙個系統預設初始化),當然也可以直接賦值

區域性變數:

在使用之前,必須初始化,否則編譯不通過

注意事項:

當成員變數名稱和區域性變數名稱一致,通過成員方法訪問變數名稱的時候,採用就近原則!

區域性位置沒有,成員位置找!

//定義的類

class

variable

}//測試類

class

variabledemo

}

區域性變數和成員變數區別

類中定義的變數,和在方法定義的變數有啥差別呢?即區域性變數和成員變數區別 總結下面幾點異同 區別一 定義的位置不同 定義在類中的變數是成員變數 定義在方法中或者 語句裡面的變數是區域性變數 區別二 在記憶體中的位置不同 成員變數儲存在堆記憶體的物件中 區域性變數儲存在棧記憶體的方法中 區別三 宣告週...

區域性變數和成員變數區別

區別一 定義的位置不同 定義在類中的變數是成員變數 定義在方法中或者 語句裡面的變數是區域性變數 區別二 在記憶體中的位置不同 成員變數儲存在堆記憶體的物件中 區域性變數儲存在棧記憶體的方法中 區別三 生命週期不同 成員變數隨著物件的出現而出現在堆中,隨著物件的消失而從堆中消失 區域性變數隨著方法的...

區域性變數和成員變數的區別

區別1 中位置不同 成員變數 類中方法外定義的變數 區域性變數 方法中定義的變數 塊中定義的變數 區別2 的作用範圍 成員變數 當前類的很多方法 區域性變數 當前乙個方法 當前 塊 區別3 是否有預設值 成員變數 有 區域性變數 沒有 引用資料型別 null 區別4 是否要初始化 成員變數 不需要,...