Java基礎06:變數、常量、作用域

KNONO發表於2024-07-21

1.變數

Java是一種強型別語言,每個變數都必須宣告其型別。
Java變數是程式中最基本的儲存單元,其要素包括變數名,變數型別和作用域。
變數在使用前必須對其宣告, 只有在變數宣告以後,才能為其分配相應長度的儲存單元,宣告格式為:

type varName = value, varName2 = value2;
//資料型別 變數名 = 值;可以使用逗號隔開來宣告多個同型別變數。

注意事項:

  • 每個變數都有型別,型別可以是基本型別,也可以是引用型別。
  • 變數名必須是合法的識別符號。
  • 變數宣告是一條完整的語句,因此每一個宣告都必須以分號結束

例子:

int a, b, c; // 宣告三個int型整數:a、 b、c
int d = 3, e = 4, f = 5; // 宣告三個整數並賦予初值
byte z = 22; // 宣告並初始化 z
String s = "runoob"; // 宣告並初始化字串 s
double pi = 3.14159; // 宣告瞭雙精度浮點型變數 pi
char x = 'x'; // 宣告變數 x 的值是字元 'x'。

雖然可以在一行宣告多個變數,但是不提倡這個風格,逐一宣告每一個變數可以提高程式可讀性。

2.變數作用域

變數根據作用域可劃分為三種:

  • 類變數(靜態變數: static variable):獨立於方法之外的變數,用 static 修飾。
  • 例項變數(成員變數:member variable):獨立於方法之外的變數,不過沒有 static 修飾。
  • 區域性變數(lacal variable):類的方法中的變數。
public class Variable {
	static int allClicks = 0; // 類變數
	String str = "hello world"; // 例項變數
	public void method(){
		int i = 0; // 區域性變數
	}
}

區域性變數

方法或語句塊內部定義的變數。生命週期是從宣告位置開始到”}”為止。
在使用前必須先宣告和初始化(賦初值)。
區域性變數沒有預設值,所以區域性變數被宣告後,必須經過初始化,才可以使用。

public static void main(String[] args) {
	int i;
	int j = i+5 ; // 編譯出錯,變數i還未被初始化
	System.out.println(j);
}
// 修改為:
public static void main(String[] args) {
	int i = 10; // 初始化後可使用
	int j = i+5 ;
	System.out.println(j);
}

例項變數

方法外部、類的內部定義的變數。
從屬於物件,生命週期伴隨物件始終。
使用例項變數,必須先例項化物件,再進行使用。
如果不自行初始化,他會自動初始化成該型別的預設初始值
(數值型變數初始化成0或0.0,字元型變數的初始化值是16位的0,布林型預設是false)

public class Test {
	// 這個例項變數對子類可見
	public String name;
	// 私有變數,僅在該類可見
	private double salary;
	...
	public static void main(String[] args) {
		Test test = new Test();
		System.out.println(test.name); // 使用例項變數,必須先例項化物件,再進行使用。
	}
}

靜態變數

使用static定義。
從屬於類,生命週期伴隨類始終,從類載入到解除安裝。
如果不自行初始化,他會自動初始化成該型別的預設初始值
(數值型變數初始化成0或0.0,字元型變數的初始化值是16位的0,布林型預設是false)

public class Employee {
	//salary是靜態的私有變數
	private static double salary;
	// DEPARTMENT是一個常量
	public static final String DEPARTMENT = "開發人員";
	public static void main(String[] args){
		salary = 10000; // 靜態變數可以直接使用
		System.out.println(DEPARTMENT+"平均工資:"+salary);
	}
}

3.常量

常量(Constant):初始化(initialize)後不能再改變值!不會變動的值。
所謂常量可以理解成一種特殊的變數,它的值被設定後,在程式執行過程中不允許被改變。

final 常量名 = 值;
final double PI=3.14; final String LOVE="hello";

常量名一般使用大寫字元。
程式中使用常量可以提高程式碼的可維護性。例如,在專案開發時,我們需要指定使用者的性別,此時可以
定義一個常量 SEX,賦值為 "女",在需要指定使用者性別的地方直接呼叫此常量即可,避免了由於使用者的
不規範賦值導致程式出錯的情況。

4.變數的命名規範

  1. 所有變數、方法、類名:見名知意
  2. 類成員變數:首字母小寫和駝峰原則 : monthSalary
  3. 區域性變數:首字母小寫和駝峰原則
  4. 常量:大寫字母和下劃線:MAX_VALUE
  5. 類名:首字母大寫和駝峰原則: Man, GoodMan
  6. 方法名:首字母小寫和駝峰原則: run(), runRun()

相關文章