###############導入###
Java では、変数とメソッドを静的として定義できます。静的変数または静的メソッドは、そのクラスの個々のオブジェクトではなく、クラス自体に属します。したがって、クラスのオブジェクトを作成しなくても、クラス名を使用して静的変数またはメソッドにアクセスできます。
このプログラムでは、静的メソッドを介して静的変数のアクセス可能性をチェックする方法を検討します。静的変数を含むクラスと、その変数にアクセスするための静的メソッドを定義します。次に、静的メソッドを呼び出して、静的変数にアクセスできるかどうかを確認します。###意味### ###静的###
Java における static の主な機能の一部を以下に示します -
静的メソッド
- 静的変数は、クラスのすべてのインスタンス間で共有されるクラスレベルの変数です。これはキーワード static を使用して定義され、クラスのロード時に 1 回だけ初期化されます。静的変数にアクセスするには、クラス名の後にドット演算子を付けて使用します。
public アクセス修飾子を使用して静的メソッドを宣言すると、静的変数を含むクラスを含む他のクラスがそのメソッドにアクセスできます。この場合、静的変数がパブリック アクセス修飾子でも宣言されていれば、静的メソッドを通じて静的変数にアクセスできます。
「import」ステートメントを使用して、必要な I/O ライブラリをインポートします。
「Tutorialspoint」という名前の Java クラスを定義します。
public、static、void シグネチャを使用して main() メソッドを定義し、「args」という名前の文字列パラメータの配列を受け取ります。
main() メソッドで、System.out.println() メソッドを使用して、静的変数 "i" の値をコンソールに表示します。
コードを「Tutorialspoint.java」という名前の Java ファイルに保存します。
Java コンパイラ (「javac」など) を使用して Java コードをコンパイルします。
「java」コマンドを使用して Java コードを実行します。これにより、「main」メソッドが実行され、「Static Variable = 100」という出力がコンソールに表示されます。
この例では、「Tutorialspoint」という名前のクラスが、整数データ型の「i」という名前の静的変数で定義され、値 100 で初期化されます。
main メソッドで、System.out.println() メソッドを使用して静的変数 "i" の値を出力します。出力ステートメントには、静的変数「i」の値と連結された文字列「Static Variable=」が含まれています。
静的変数は、クラス インスタンスではなくクラスに属する変数です。これは、クラスのすべてのインスタンスが静的変数のコピーを 1 つだけ共有することを意味します。つまり、静的変数は、クラスのオブジェクトを作成せずにアクセスできるクラスレベルの変数です。
リーリーただし、静的変数が private アクセス修飾子を使用して宣言されている場合は、同じクラス内でのみアクセスできます。この場合、パブリック アクセス修飾子を使用して宣言されている場合でも、静的メソッドは静的変数にアクセスできません。
この場合、クラス内で静的変数、静的配列、静的メソッドを宣言しました。静的メソッドは静的変数と静的配列の両方にアクセスするため、メソッドを呼び出すときにクラスのインスタンスを作成する必要はありません。
静的変数と静的配列は両方とも、クラスの特定のインスタンスではなくクラスに属しているため、クラスのインスタンスを作成せずにメソッドが呼び出された場合でも、静的メソッドを介してアクセスできます。
###方法###
声明一个名为 myArray 的私有静态整数数组,并使用一些值对其进行初始化,例如 myArray = new int[]{1, 2, 3, 4, 5};
声明一个名为 myStaticMethod() 的公共静态方法,它执行以下操作 -
将 count 的值增加 1。
使用 System.out.println() 将 count 的值打印到控制台。
循环遍历 myArray 数组并使用 System.out.println() 将每个元素打印到控制台。
保存 MyClass.java 文件。
public class MyClass { private static int count = 0; private static int[] myArray = new int[]{1, 2, 3, 4, 5}; public static void myStaticMethod() { count++; System.out.println("Count: " + count); for (int i = 0; i < myArray.length; i++) { System.out.println(myArray[i]); } } }
创建一个新的 Java 类文件并将其命名为 Main.java。
在 Main.java 文件中,添加 main() 方法。
在 main() 方法中,使用类名称后跟方法名称和括号来调用 MyClass 类的 myStaticMethod() 方法,例如 MyClass.myStaticMethod();。
保存 Main.java 文件。
public class Main { public static void main(String[] args) { MyClass.myStaticMethod(); } }
通过在命令提示符或终端中运行命令 javac MyClass.java Main.java 来编译 MyClass.java 和 Main.java 文件。
通过在命令提示符或终端中运行命令 java Main 来运行程序。
在此示例中,我们有一个 MyClass 类,其中包含静态变量 count 和静态数组 myArray,以及静态方法 myStaticMethod()。 myStaticMethod() 方法将 count 的值加 1,将 count 的值打印到控制台,然后循环遍历 myArray 数组并将每个元素打印到控制台。
在 Main 类中,我们通过使用类名后跟方法名和括号来调用 MyClass 类本身(而不是该类的任何实例)上的 myStaticMethod() 方法。此方法调用将执行 myStaticMethod() 方法并将以下内容输出到控制台 -
Count: 1 1 2 3 4 5
在 Java 中,静态变量和静态方法与类本身相关联,而不是与类的任何特定实例相关联。这意味着静态方法可以直接访问静态变量,只要该变量与该方法在同一个类中定义即可。
以上が静的変数への静的メソッドのアクセシビリティをチェックする Java プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。