Java 教程

Java控制語句

面向物件程式設計

Java內建類

Java檔案處理

Java錯誤與異常

Java多執行緒

Java同步

Java網路程式設計

Java集合

Java介面

Java資料結構

Java集合演算法

高階Java

Java雜項

Java APIs與框架

Java類引用

Java有用資源

Java - static關鍵字



靜態變數

static關鍵字用於建立獨立於類的任何例項而存在的變數。無論建立多少個類的例項,靜態變數都只有一個副本。

靜態變數也稱為類變數。區域性變數不能宣告為靜態。

靜態方法

static關鍵字用於建立獨立於類的任何例項而存在的方法。

靜態方法不使用其定義所在類的任何物件的任何例項變數。靜態方法從引數中獲取所有資料,並根據這些引數計算某些內容,而無需引用變數。

可以使用類名後跟一個點和變數或方法的名稱來訪問類變數和方法。

static修飾符用於建立類方法和變數,如下例所示:

示例

public class InstanceCounter {

   private static int numInstances = 0;

   protected static int getCount() {
      return numInstances;
   }

   private static void addInstance() {
      numInstances++;
   }

   InstanceCounter() {
      InstanceCounter.addInstance();
   }

   public static void main(String[] arguments) {
      System.out.println("Starting with " + InstanceCounter.getCount() + " instances");

      for (int i = 0; i < 500; ++i) {
         new InstanceCounter();
      }
      System.out.println("Created " + InstanceCounter.getCount() + " instances");
   }
}

輸出

Starting with 0 instances
Created 500 instances

以下是另一個示例,我們使用物件而不是類來訪問靜態方法:

示例

public class InstanceCounter {

   private static int numInstances = 0;

   protected static int getCount() {
      return numInstances;
   }

   private static void addInstance() {
      numInstances++;
   }

   InstanceCounter() {
      InstanceCounter.addInstance();
   }

   public static void main(String[] arguments) {
      System.out.println("Starting with " + InstanceCounter.getCount() + " instances");

      for (int i = 0; i < 499; ++i) {
         new InstanceCounter();
      }
      InstanceCounter ic = new InstanceCounter();
      System.out.println("Created " + ic.getCount() + " instances");
   }
}

輸出

Starting with 0 instances
Created 500 instances
java_basic_syntax.htm
廣告
© . All rights reserved.