-1

静的変数とグローバル変数の違いにとても混乱しています。今日、Java の教科書を読んでいて、「静的として宣言された変数は、本質的にはグローバル変数です。オブジェクトが宣言されている場合、静的変数のコピーは作成されません。」に目が留まりました。静的変数がクラス内のすべてのオブジェクトで共有される理由ははっきりしていますが、静的変数がグローバル変数である理由はわかりません。私の理解では、静的変数はそのクラスで「グローバル」とのみ見なすことができます。

4

5 に答える 5

5

静的変数には、 を使用してアクセスできます (アクセスする必要があります) Class.Variable

静的変数は、それらがpublic.

public class MyClass {
 public static int X = 5;
}

を使用して、クラスが利用可能なすべての場所にアクセスできます

MyClass.X

実際の「グローバル」キーワードなどはありませんが、その意図に近いものです。

于 2013-10-21T14:20:33.950 に答える
0

私が知る限り、メモリはメソッドを呼び出す main で宣言されたオブジェクトによって割り当てられます。非静的変数を呼び出す場合は、呼び出されるたびに初期化されます。一方、メモリは static 変数に一度だけ割り当てられ、それが呼び出されるたびにその値は変わりません。

于 2014-02-11T09:51:38.813 に答える