静的メソッドは static キーワードを使用して定義されますが、インスタンス変数を宣言する場合は static キーワードは使用されません。通常、静的メソッドを介してインスタンス変数にアクセスすることはできません。
この記事では、インスタンス変数を作成し、静的メソッドを通じてインスタンス変数へのアクセス可能性を確認します。まず、静的メソッドとインスタンス変数について理解しましょう。
###インスタンス変数###
プログラミング言語のコンテキストでは、変数は任意の型のデータを含むコンテナーの名前です。収納ユニットとも言えます。
変数を宣言する構文
リーリー
変数は宣言時に初期化することも、プログラム全体で必要なときに初期化することもできますが、値は宣言時に指定したデータ型と同じである必要があります。
###例###
リーリー
インスタンス変数は、非静的変数のタイプの 1 つです。インスタンス変数は、クラス内で宣言されますが、そのクラスのすべてのメソッド スコープの外に宣言されます。インスタンス変数は、それが定義されているクラスに属するすべてのメソッドにアクセスできます。 public、private、protected、またはdefaultのいずれかになります。アクセス指定子を何も指定しない場合、変数はデフォルトのアクセス指定子で初期化されます。
静的メソッド
静的メソッドは、アクセス修飾子ではない static キーワードを使用して定義されます。通常、メソッドはそのクラスのオブジェクトを作成して呼び出しますが、静的メソッドはオブジェクトを使用せずに呼び出すこともできます。静的メソッドが属するため、クラス名のみを使用して呼び出します。クラスをそのクラスのインスタンスにではありません。
静的メソッドを呼び出すには
リーリー
たとえば、組み込みクラス Math のメンバーのほとんどは静的であり、オブジェクトを作成せずに直接使用できます。
例 2
リーリー
###出力###
リーリー
上の例は、Math クラスの静的メソッド ceil() および Floor() の使用を示しています。 Math クラス オブジェクトを作成せずに、プログラム内でこれらを直接使用していることがわかります。
静的メソッドによるインスタンス変数のアクセス可能性のチェック
静的メソッドではインスタンス変数に直接アクセスできないことは、この記事の前半ですでに述べました。クラスのインスタンスまたはオブジェクトを作成することによってのみアクセスできます。
###例###
次のプログラムは、静的メソッド main() でインスタンス変数にアクセスできるかどうかを示します。
リーリー
上記のコードを実行しようとすると、エラーが発生します。
###出力###
リーリー
###例###
次のプログラム例は、静的メソッドを通じてインスタンス変数にアクセスする方法を示しています。 Mainクラスのオブジェクト「obj」を作成し、このオブジェクトを使用して変数「str」にアクセスできます。
リーリー
###出力###
リーリー
###結論###
この記事では、インスタンス変数と静的メソッドの概念について学びました。さらに、Java プログラムを介したインスタンス変数への静的メソッドのアクセス可能性についても説明しました。
以上が静的メソッドを介してインスタンス変数のアクセス可能性をチェックするための Java プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。