成員變數和區域性變數的區別?
1.類中的位置不同
成員變數:在類中方法外
區域性變數:在方法中定義或者在方法宣告上
2.記憶體中的位置不同
成員變數:在堆記憶體中
區域性變數:在棧記憶體中
3.命週期不同
成員變數:隨著物件的建立而存在,隨著物件的消失而消失
區域性變數:隨著方法的呼叫而存在,隨著方法的呼叫完成而消失
4.始化值不一樣
成員變數:有預設的對應型別的初始化值
區域性變數:沒有預設初始化值,必須定義,賦值之後才能使用。
不同方法中,是不能訪問另外乙個方法中定義的區域性變數的。
區域性變數名稱可以和成員變數名稱一樣,在方法中使用的時候,採用的是就近原則:
即方法中定義的變數會覆蓋成員變數的值,在方法中想要使用成員變數,可以通過
this
關鍵字來指定。
classvariable
}
public
classvariabledemo
}
成員變數和區域性變數區別
變數根據定義位置的不同,我們給變數起了不同的名字。如下圖所示 在類中的位置不同 重點 成員變數 類中,方法外 區域性變數 方法中或者方法宣告上 形式引數 作用範圍不一樣 重點 成員變數 類中 區域性變數 方法中 初始化值的不同 重點 成員變數 有預設值 區域性變數 沒有預設值。必須先定義,賦值,最後...
成員變數和區域性變數區別
成員變數 直接宣告在類內部的變數稱為成員變數 member variables 宣告成員變數的語法格式 修飾符 資料型別 變數名 值 public static final double pi 3.14 區域性變數 只能宣告在方法 包括形參列表 或者程式塊中 使用前,必須顯式地為區域性變數初始化 不...
成員變數和區域性變數的區別
成員變數和區域性變數的區別?a 在類中的位置不同 成員變數 在類中方法外 區域性變數 在方法定義中或者方法宣告上 b 在記憶體中的位置不同 成員變數 在堆記憶體 區域性變數 在棧記憶體 c 生命週期不同 成員變數 隨著物件的建立而存在,隨著物件的消失而消失 區域性變數 隨著方法的呼叫而存在,隨著方法...