成員變量 局部變量

java局部變量和成員變量html

在java中,局部變量必須初始化;成員變量能夠不用初始化,系統自動初始化。java

class A{
  int a; //成員變量
  public static void main (String args){
          int b; //局部變量
  }
}

區別:spa

1)成員變量在類中,局部變量在方法中code

2)聲明成員變量時能夠不初始化(被final修飾且沒有static的必須顯式賦值),而局部變量必須手動初始化htm

3)成員變量能夠被public、protected、private、static等修飾符修飾,而局部變量不能被控制修飾符及static修飾;二者均可以定義成final型對象

4)成員變量存儲在堆,局部變量存儲在棧blog

5)存在時間不一樣get

 

類變量、實例變量、局部變量編譯

類變量是類中獨立於方法以外的變量,用static修飾;class

實例變量也是類中獨立於方法以外的變量,不過沒有static修飾;

局部變量是的方法中的變量

public class Variable{  
  
     static int allClicks=0;//類變量  
  
     String str="hello world";//實例變量  
  
     public void method(){  
  
        int i =0;//局部變量  
  
     }  
  
}  

實例變量也稱爲:「域」,「成員變量」,在實體類或數據類中被稱爲「屬性」或「字段」。當實例變量能夠改變時,被稱爲對象的狀態。
final用於常量的聲明,規範要求常量的變量名是大寫的。

static靜態變量:

http://www.cnblogs.com/dongzhiquan/archive/2009/07/21/1994792.html

 靜態方法和通常方法的區別:

從使用上來講,主要有3點區別:
一、在外部調用靜態方法時,能夠使用"類名.方法名"的方式,也能夠使用"對象名.方法名"的方式。而實例方法只有後面這種方式。也就是說,調用靜態方法能夠無需建立對象。

二、靜態方法在訪問本類的成員時,只容許訪問靜態成員(即靜態成員變量和靜態方法),而不容許訪問實例成員變量和實例方法;實例方法則無此限制。三、程序的static塊只能調用靜態方法,不能調用實例的方法。若是要追溯其區別的根源,能夠這樣理解:在編譯期間靜態方法的行爲就已經肯定,而實例方法只有在運行期間當實例肯定以後才能肯定
相關文章
相關標籤/搜索