成員變數與區域性變數的區別 Java基礎034

2021-07-26 02:53:20 字數 625 閱讀 2783

/*

成員變數與區域性變數的區別:

定義的位置上區別:

1. 成員變數是定義在方法之外,類之內的。

2. 區域性變數是定義在方法之內。

作用上的區別:

1. 成員變數的作用是用於描述一類事物的公共 屬性的。

2. 區域性變數的作用就是提供乙個變數給方法內部使用而已。

生命週期區別:

1. 隨著物件 的建立而存在,隨著物件的消失而消失。

2. 區域性變數在呼叫了對應的方法時執行到了建立該變數的語句時存在,區域性變數一旦出了自己的作用域

那麼馬上從記憶體中消失。

初始值的區別:

1. 成員變數是有預設的初始值。

資料型別 預設的初始值

int 0

float 0.0f

double 0.0

boolean false

char ' '

string(引用資料型別) null

2. 區域性變數是沒有預設的初始值的,必須要先初始化才能使用。

*/

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

成員變數 作為類的成員而存在,直接存在於類中。所有類的成員變 量可以通過this來引用。區域性變數 作為方法或語句塊的成員而存在,存在於方法的引數列表和方法定義中。1.在類中的位置不同 成員變數 在類中,方法外 區域性變數 在方法中或者方法宣告上 形式引數 2.在記憶體中的位置不同 成員變數儲存在堆...

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

public class test2 在eat和sleep方法中,都是string型別的name,說明不同的方法,可以有同名的區域性變數 當成員變數和區域性變數名稱相同時,區域性變數更有優先順序 如果想使用成員變數,那麼就使用this.屬性名 成員變數有預設的初始值,應用資料型別的預設值為null,...

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

儲存方式存在差異?區域性變數儲存在棧記憶體中,方法呼叫完畢就會釋放變數占用的記憶體空間。成員變數儲存在堆記憶體中,方法呼叫完畢,不會釋放占用的記憶體空間 因為成員變數可以在多個方法中使用 定義上的差異?成員變數可以使用修飾符 public protected private 區域性變數不能使用修飾符...