1. 程式人生 > >Java——變量

Java——變量

位置 我們 對象 最好 自動 靜態區 別名 釋放 strong

變量是Java很重要的基礎,但是變量也分很多種,有時候也為分不清它們各個是幹嘛的~

我們先來簡單的看一下他們的定義:

  • 局部變量:在方法、構造方法或者語句塊中定義的變量被稱為局部變量。變量聲明和初始化都是在方法中,方法結束後,變量就會自動銷毀。
  • 成員變量:成員變量是定義在類中,方法體之外的變量。這種變量在創建對象的時候實例化。成員變量可以被類中方法、構造方法和特定類的語句塊訪問。
  • 類變量:類變量也聲明在類中,方法體之外,但必須聲明為static類型。

局部變量是最好理解的,我們就不說了,主要是說一下最容易讓人混淆的類變量和成員變量。

1、兩個變量的生命周期不同

成員變量隨著對象的創建而存在,隨著對象的回收而釋放。

靜態變量隨著類的加載而存在,隨著類的消失而消失。

2、調用方式不同

成員變量只能被對象調用。

靜態變量可以被對象調用,還可以被類名調用。

3、別名不同

成員變量也稱為實例變量。

靜態變量也稱為類變量。

4、數據存儲位置不同

成員變量存儲在堆內存的對象中,所以也叫對象的特有數據。

靜態變量數據存儲在方法區(共享數據區)的靜態區,所以也叫對象的共享數據。

Java——變量