成員變數和區域性變數

2021-07-05 23:12:57 字數 1034 閱讀 8288

定義類其實就是在定義類中的成員

成員: 成員變數<-->

屬性,  成員函式

<-->行為

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

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

區域性變數定義在函式、語句、區域性**塊中,只在所屬的區域有效

2. 成員變數存在於堆記憶體的物件中。

區域性變數存在於棧記憶體的方法中。

3.(存活時間不同) 

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

區域性變數隨著所屬區域的執行而存在,隨著所屬區域的結束而釋放。

4.成員變數都有預設的初始化值。

區域性變數沒有預設的初始化值。

class car

}public class cardemo 

成員變數和區域性變數的同名&

顯示:

class car

}public class cardemo 

結果:10...red

int num=10;區域性變數

system.err.println(num+"..."+color);輸出時  所處棧中存在  

num  

在棧中找不到  到堆中找

堆中沒有   報錯!!

匿名物件:沒有名字的物件

new car():

//匿名物件,其實就是定義物件的簡寫格式。

car c  = new car();

c.run();

new car().run;

1.當物件對方法僅進行一次呼叫的時候,就可以簡化成匿名物件。

new car()

.num= 5;//

匿名物件呼叫一次過後就關閉

new car()

.color=」green」;

new car().run;

2.匿名物件可以作為實際引數進行傳遞。

//car c1 = new car();

//show (c1);

//==

show(

new car());

成員變數和區域性變數

成員變數 寫在 interence和 end之間大括號之間的變數 例項變數,屬性 注意 1.成員變數只能通過物件來訪問 2.成員變數不能離開類,離開類之後就不是成員變數 3.成員變數不能在定義的同時初始化 儲存 當前物件對應的堆得儲存空間中 堆區 特點 堆區儲存的資料不會自動釋放,只能手動釋放 區域...

成員變數和區域性變數

成員變數 區域性變數 在類內部定義的變數 在方法內部定義的變數 有訪問許可權修飾符 沒有訪問許可權修飾符 有靜態成員變數 沒有靜態區域性變數 系統可以自動為成員變數賦初值 系統不會為區域性變數賦初值 只要類在某個作用域中,其字段也 也稱成員變數 也在該作用域內 區域性變數存在於表示宣告該變數的塊語句...

成員變數和區域性變數

成員變數 例項變數 不以static修飾 類變數 以static修飾 類變數從類的準備階段開始存在,知道系統完全銷毀這個類,類變數的作用域與這個類的生存範圍相同 而例項變數則從該類的例項被建立起開始存在,直到系統完全銷毀這個例項,例項變數的作用域與對應例項的生存範圍相同。類.類變數 例項.例項變數 ...