Java 中的私有靜態變數

Aryan Tyagi 2023年10月12日
Java 中的私有靜態變數

類變數,通常稱為靜態變數,在類中使用 static 關鍵字定義,但在方法、建構函式(預設或引數化)或塊之外。

私有靜態變數經常用於常量。例如,許多人不喜歡在他們的程式碼中使用常量。相反,他們更喜歡建立一個具有有意義名稱的私有靜態變數並在他們的程式碼中使用它,使程式碼更易於理解。

如果變數被宣告為靜態變數,那麼變數的值對於所有例項都是相同的,我們不需要建立一個物件來呼叫該變數。

可以輕鬆訪問宣告為 private static 的變數,但只能從定義和宣告它的類內部訪問。這是因為變數被宣告為私有的,而私有變數在類之外是不可訪問的。在類中,可以使用 ClassName.Variable_name

例如,

public class Demo {
  private static int a = 10;

  public static void main(String[] args) {
    System.out.println(Demo.a); // className.variable_name
  }
}

輸出:

10

在上面的例子中,我們建立了一個靜態私有變數並列印了它的值。

讓我們通過一個例子來了解私有和私有靜態變數之間的區別。

public class test {
  private static int eye = 2;
  private int leg = 3;

  public test(int eyes, int legs) {
    eye = eyes;
    leg = leg;
  }

  public test() {}

  public void print() {
    System.out.println(eye);
    System.out.println(leg);
  }

  public static void main(String[] args) {
    test PersonB = new test(14, 8);
    PersonB.print();
  }
}

輸出:

14
3

PersonB 物件更改了上面示例中的 eye 變數,但 leg 變數保持不變。這是因為私有變數將自身複製到方法中,保留其原始值。但是私有靜態值只有一個副本供所有方法共享,因此更改其值會更改原始值。

相關文章 - Java Class