JAVA 1.8.0入門學習(1)按照作用域將變量分級

◼ 在Java中,變量的作用域分爲四個級別:
 類級:類級變量又稱全局級變量或靜態變量,需要使用static關鍵字修飾,在類定義後就已經存在,佔用內存空間,可以通過類名來訪問,不需要實例化。
 對象實例級:就是成員變量,實例化後纔會分配內存空間,才能訪問。
 方法級:在方法內部定義的變量,即局部變量。
 塊級:定義在一個塊(大括號包圍的代碼)內部的變量,變量的生存週期就是這個塊,出了這個塊就消失了,比如 if、 for 語句的塊。


public class VarDemo {
	public static String name = "this is an explanation";//class level
	public static int i=100;//class level
	{
		int i = 2;//塊級變量
	}
	public void method1() {
		int j = 3;//method level
		if (j==3) {
			int k=5;//塊級變量
		}//塊級變量只能在塊內部訪問
		System.out.println("name = "+name+ ",i = "+i+ "j = "+j);
	}
	public static void main(String[] args) {
		System.out.println(VarDemo.name);
		VarDemo var = new VarDemo();
		var.method1();
		System.out.println(VarDemo.i);
	}
}

output:

this is an explanation
name = this is an explanation,i = 100j = 3
100

注意1

static爲靜態變量的修飾詞;
有static修飾的屬性,不需要實例化,直接由類名+點操作符即可調用;
沒有static修飾的屬性,則爲對象實例級,//object example level,需要實例化類之後,纔可以調用;
如果第三行沒有static,寫爲
public int i=100;//則爲object example level,
System.out.println(VarDemo.i);時會提示類沒有i的屬性
,但
VarDemo var = new VarDemo();//實例化後,
System.out.println(var.i);結果是可以輸出的。

注意2

JAVA不可以二次賦值同一個變量。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章