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

2021-07-03 14:20:47 字數 586 閱讀 4534

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

1.類中的位置不同

成員變數:在類中方法外

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

2.記憶體中的位置不同

成員變數:在堆記憶體中

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

3.命週期不同

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

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

4.始化值不一樣

成員變數:有預設的對應型別的初始化值

區域性變數:沒有預設初始化值,必須定義,賦值之後才能使用。

不同方法中,是不能訪問另外乙個方法中定義的區域性變數的。

區域性變數名稱可以和成員變數名稱一樣,在方法中使用的時候,採用的是就近原則:

即方法中定義的變數會覆蓋成員變數的值,在方法中想要使用成員變數,可以通過

this

關鍵字來指定。

classvariable

}

public

classvariabledemo

}

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

變數根據定義位置的不同,我們給變數起了不同的名字。如下圖所示 在類中的位置不同 重點 成員變數 類中,方法外 區域性變數 方法中或者方法宣告上 形式引數 作用範圍不一樣 重點 成員變數 類中 區域性變數 方法中 初始化值的不同 重點 成員變數 有預設值 區域性變數 沒有預設值。必須先定義,賦值,最後...

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

成員變數 直接宣告在類內部的變數稱為成員變數 member variables 宣告成員變數的語法格式 修飾符 資料型別 變數名 值 public static final double pi 3.14 區域性變數 只能宣告在方法 包括形參列表 或者程式塊中 使用前,必須顯式地為區域性變數初始化 不...

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

成員變數和區域性變數的區別?a 在類中的位置不同 成員變數 在類中方法外 區域性變數 在方法定義中或者方法宣告上 b 在記憶體中的位置不同 成員變數 在堆記憶體 區域性變數 在棧記憶體 c 生命週期不同 成員變數 隨著物件的建立而存在,隨著物件的消失而消失 區域性變數 隨著方法的呼叫而存在,隨著方法...