java局部變量與成員變量:
在Java中,局部變量必須初始化;成員變量能夠不用初始化,系統自動初始化。
class A { int a;//成員變量 public static void main(String[] args) { int b;//局部變量 } }
區別:
1.成員變量在類中,局部變量在方法中
2.聲明成員變量時能夠不初始化(被final修飾且沒有static的必須顯式賦值),而局部變量必須手動初始化 3.成員變量能夠被public,protect,private,static等修飾符修飾,而局部變量不能被控制修飾符及static修飾;二者均可 以定義成final型
4.成員變量存儲在堆,局部變量存儲在棧
5.存在時間不一樣
類變量、實例變量、局部變量
類變量是類中獨立於方法以外的變量,用static 修飾。
實例變量也是類中獨立於方法以外的變量,不過沒有static修飾。
局部變量是類的方法中的變量。
看下面的僞代碼說明:java
Java代碼 函數
public class Variable{ 對象
static int allClicks=0;//類變量 ci
String str="hello world";//實例變量 class
public void method(){ 變量
int i =0;//局部變量 object
} 方法
} 數據
實例變量也稱爲:「域」,「成員變量」,在實體類或數據類中被稱爲「屬性」或「字段」。當實例變量能夠改變時,被稱爲對象的狀態。
final用於常量的聲明,規範要求常量的變量名是大寫的。
statci 在java 裏面用於對類方法和屬性進行修飾,其做用是什麼呢?
有兩種狀況是non-static沒法作到的,這時你就要使用statice。
第一種:你但願不論產生了多少個對象,或不存在 任何對象的情形下,那些特定數據的存儲空間都只有一份;
第二種:你但願某個函數不要和class object綁在一塊兒。即便沒有產生任何object,外界仍是能夠調用其static函數,或是取用其static data。static