類變量(靜態(tài)變量)
類變量也稱為靜態(tài)變量,在類中以static關(guān)鍵字聲明,但必須在方法構(gòu)造方法和語句塊之外。
無論一個類創(chuàng)建了多少個對象,類只擁有類變量的一份拷貝。
靜態(tài)變量除了被聲明為常量外很少使用。常量是指聲明為public/private,final和static類型的變量。常量初始化后不可改變。
靜態(tài)變量儲存在靜態(tài)存儲區(qū)。經(jīng)常被聲明為常量,很少單獨使用static聲明變量。
靜態(tài)變量在第一次被訪問時創(chuàng)建,在程序結(jié)束時銷毀。
與實例變量具有相似的可見性。但為了對類的使用者可見,大多數(shù)靜態(tài)變量聲明為public類型。
默認值和實例變量相似。數(shù)值型變量默認值是0,布爾型默認值是false,引用類型默認值是null。變量的值可以在聲明的時候指定,也可以在構(gòu)造方法中指定。此外,靜態(tài)變量還可以在靜態(tài)語句塊中初始化。
靜態(tài)變量可以通過:ClassName.VariableName的方式訪問。
類變量被聲明為public static final類型時,類變量名稱一般建議使用大寫字母。如果靜態(tài)變量不是public和final類型,其命名方式與實例變量以及局部變量的命名方式一致。
實例:
Employee.java 文件代碼:
import java.io.*;
public class Employee {
? ? //salary是靜態(tài)的私有變量
? ? private static double salary;
? ? // DEPARTMENT是一個常量
? ? public static final String DEPARTMENT = "開發(fā)人員";
? ? public static void main(String[] args){
? ? salary = 10000;
? ? ? ? System.out.println(DEPARTMENT+"平均工資:"+salary);
? ? }
}
以上實例編譯運行結(jié)果如下:
開發(fā)人員平均工資:10000.0
注意:如果其他類想要訪問該變量,可以這樣訪問:Employee.DEPARTMENT。
本章節(jié)中我們學(xué)習(xí)了Java的變量類型,下一章節(jié)中我們將介紹Jav