サブクラスを呼び出すメインクラスがあります。サブクラス変数が再び初期化されない
私のサブクラスが
メインのように私はそれは を初期化し、私がメインでsubclass2の新しいオブジェクトを作る際に毎回たいSubClass2.Iのオブジェクトを呼び出すpublic class SubClass2 extends Main {
public static long a = 0;
public static long b = 0;
public static long c= 0;
public void Analyze(int number)
{
b=2;
//some code
}
}
のようないくつかのpublic static変数が含まれていますすべての変数= 0ですが、変数b.Itのprintステートメントを取ると、4.Itは前の値と新しい値を加算します。
静的メソッドまたは変数は、特定のオブジェクトにではなく、クラス全体に関連付けられます。クラスがロードされるときに割り当てられます。あなたがインスタンスを呼び出すたびに、変数の新しい値が提供されることを覚えておいてください。 –