成員變數,區域性變數與陣列

2021-08-15 15:08:09 字數 829 閱讀 2329

成員變數:

1、成員變數定義在類中,在整個類中都可以被訪問。

2、成員變數隨著物件的建立而建立,隨著物件的消失而消失,存在於物件所在的堆記憶體中。

3、成員變數有預設初始化值。

類變數也有預設初始值.

區域性變數:

1、區域性變數只定義在區域性範圍內,如:函式內,語句內等,只在所屬的區域有效。

2、區域性變數存在於棧記憶體中,作用的範圍結束,變數空間會自動釋放。

3、區域性變數沒有預設初始化值 

在使用變數時需要遵循的原則為:就近原則

首先在區域性範圍找,有就使用;接著在成員位置找。

成員變數和類變數的區別

由static修飾的變數稱為靜態變數,其實質上就是乙個全域性變數。如果某個內容是被所有物件所共享,那麼該內容就應該用靜態修飾;沒有被靜態修飾的內容,其實是屬於物件的特殊描述。

不同的物件的例項變數將被分配不同的記憶體空間, 如果類中的成員變數有類變數,那麼所有物件的這個類變數都分配給相同的一處記憶體,改變其中乙個物件的這個類變數會影響其他物件的這個類變數,也就是說物件共享類變數。

有關於陣列的部分,不管該陣列是屬於成員變數還是類變數或者是區域性變數,陣列必須先初始化再使用,其中動態初始化(也就是只分配空間),會預設給空間賦初值,基本型別變數整數型別為0,浮點型別為0.0,字元型別為\u0000,布林型別為false,引用型別則是null

陣列儲存過程如下:

首先陣列宣告,在棧中申請乙個位址,再根據初始化在堆中申請一些連續的空間,並且此時棧中那個位址指向這個堆中開闢的位址空間。

成員變數與區域性變數

成員變數 作為類的成員而存在,直接存在於類中。所有類的成員變 量可以通過this來引用。區域性變數 作為方法或語句塊的成員而存在,存在於方法的引數列表和方法定義中。1.成員變數可以被 public,protect,private,static等修飾符修飾,而 區域性變數不能被控制修飾符及 stati...

成員變數與區域性變數

成員變數在堆記憶體中 類變數在靜態區記憶體中 區域性變數在棧記憶體中 成員變數和類變數有預設值 區域性變數沒有預設值使用前需要先初始化 成員變數每個物件獨佔,在整個類體中有效,使用物件呼叫 類變數所有物件共享,使用類呼叫 區域性變數只在具體方法體中有效 成員變數隨著物件建立而產生,隨著物件銷毀而銷毀...

成員變數與區域性變數

1.定義位置不同 成員變數定義在類內部方法之外 區域性變數定義在方法內部 2.作用域不同 成員變數作用在類內部 區域性變數作用在方法之內 3.記憶體中的位置不同 成員變數儲存在堆裡面 區域性變數儲存在棧裡面 4.預設值不同 成員變數有預設值 區域性變數沒有預設值 5.成員變數訪問修飾符有四個 pri...