1. 概述
如下代碼:
class TestDemo{
int b = 20 ; // 成員變量
public static void main(String[] args){
int a = 10 ; // 局部變量
}
}
成員變量和局部變量的區(qū)別:
1>:在類中的位置不同:
- 成員變量:類中方法外到腥;
- 局部變量:方法內或者方法聲明上朵逝;
2>:在內存中的位置不同: - 成員變量:在堆內存;
- 局部變量:在棧內存乡范;
3>:生命周期不同: - 成員變量:隨著對象的創(chuàng)建而存在配名,隨著對象的消失而消失啤咽;
- 局部變量:隨著方法的調用而存在,隨著方法的調用完畢而消失渠脉;
4>:初始化值不同: - 成員變量:有默認的初始化值:整型:0宇整、浮點:0.0、對象:null芋膘;
- 局部變量:沒有初始化值鳞青,若要使用,必須先定義为朋,然后初始化臂拓,最后才能使用