static変数

1395 ワード

静的変数はjavaでもクラス変数と呼ばれ、名前からクラスではなくクラスに属するインスタンスであることがわかります.そのキーワードはstaticが静的ストレージ領域に格納され、プログラムが実行されると、クラスのコードがメモリにロードされ、クラスの静的変数にメモリ空間が割り当てられます.彼はクラスに属しています.つまり、インスタンスオブジェクトが静的変数である場合、静的変数のメモリ空間はプログラムが終了してから使用されたメモリ空間を解放することを知っています.静的変数はクラス名で直接アクセスします(javaはオブジェクト名でもアクセスできます).グローバルの静的変数、ローカルの静的変数に分けられる人もいます.グローバルの静的変数は「グローバル」を失います.の一般的な意味で、その役割ドメインは本ファイルに限定されています.静的変数の宣言は、クラスではなくクラスの関数に現れるはずです.個人的にはstatic変数がクラスに属し、プログラムが終了するまでメモリを永続的に保持します.このプログラムの実行中に、変数を呼び出すのは同じです.
staticは、単一のパターンを作成するために使用できます.
public class Car {
	private Car(){
		
	}
static Car car=new Car();
static {
	System.out.println("1");
}
public static Car getInstance(){
	
	
	return car;
	
}
public void run(){
	System.out.println("    ");
}

}

 
public class test {
public static void main(String[] args) {
	Car car1=Car.getInstance();
	Car car2=Car.getInstance();
Car car = Car.car;
car.run();
System.out.println();
System.out.println(car1==car);
System.out.println(car1==car2);
System.out.println(car1==car);

}

}

運転結果1一路風順
truetruetrue
実行順序は、Carの静的メソッドを呼び出してインスタンスを取得すると、Carのstaticフラグメントstatic{System.out.println(「1」)が初期化される.}静的メソッドまたは変数の場合、順番に実行されます.