Java中的靜態變數


  • 類變數,也稱為靜態變數,在類中宣告,使用`static`關鍵字,但位於方法、建構函式或程式碼塊之外。

  • 無論建立多少個物件,每個類變數都只有一個副本。

  • 靜態變數很少使用,除非宣告為常量。常量 是宣告為`public`/`private`、`final`和`static`的變數。常量變數的值在其初始值之後不會改變。

  • 靜態變數儲存在靜態記憶體中。除了宣告為`final`並用作公共或私有常量之外,很少使用靜態變數。

  • 靜態變數在程式啟動時建立,在程式停止時銷燬。

  • 可見性與例項變數類似。但是,大多數靜態變數都宣告為`public`,因為它們必須可供類的使用者使用。

  • 預設值與例項變數相同。對於數字,預設值為 0;對於布林值,為 `false`;對於物件引用,為 `null`。值可以在宣告期間或在建構函式內賦值。此外,值可以在特殊的靜態初始化塊中賦值。

  • 可以使用類名呼叫靜態變數,例如 ClassName.VariableName

  • 宣告類變數為 `public static final` 時,變數名(常量)全部大寫。如果靜態變數不是 `public` 和 `final`,則命名語法與例項變數和區域性變數相同。

示例

線上演示

import java.io.*;
public class Employee {

   // salary  variable is a private static variable
   private static double salary;

   // DEPARTMENT is a constant
   public static final String DEPARTMENT = "Development ";

   public static void main(String args[]) {
      salary = 1000;
      System.out.println(DEPARTMENT + "average salary:" + salary);
   }
}

輸出

這將產生以下結果:

Development average salary:1000

注意 - 如果從外部類訪問變數,則應使用 Employee.DEPARTMENT 訪問常量。

更新於:2023年10月4日

26K+ 瀏覽量

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.