區(qū)別如下:
(推薦教程:java學(xué)習(xí)網(wǎng)站)
1、聲明的位置
局部變量:方法體{}中,形參,代碼塊{}中
成員變量:類中方法外
-
類變量:有static修飾
-
實例變量:沒有static修飾
2、修飾符
局部變量:final
成員變量:public、protected、 private、 final、 static、 volatile、 transient
3、值存儲的位置
局部變量:棧
實例變量:堆
類變量:方法區(qū)
(視頻教程推薦:java學(xué)習(xí))
4、作用域
局部變量:從聲明處開始,到所屬的}結(jié)束
實例變量:在當(dāng)前類中“this.”(有時this. 可以缺省),在其他類中“對象名.””訪問
類變量:在當(dāng)前類中“類名.”(有時類名.可以省略),在其他類中“類名.或“對象名?!痹L問
5、生命周期
局部變量:每一個線程,每一次調(diào)用執(zhí)行都是新的生命周期
實例變量:隨著對象的創(chuàng)建而初始化,隨著對象的被回收而消亡,每一個對象的實例變量是獨立的
類變量:隨著類的初始化而初始化,隨著類的卸載而消亡,該類的所有對象的類變量是共享的。