Java の静的メソッドと非静的メソッドの対比
Java では、メソッドは静的メソッドと非静的メソッドの 2 つのタイプに大別されます。 (インスタンス) メソッド。これらの違いを理解することは、効果的なプログラミングにとって重要です。
静的メソッド
静的メソッドは、クラスの特定のインスタンスではなく、クラスに関連付けられます。オブジェクトをインスタンス化せずに、クラス名自体を使用して呼び出すことができます。静的メソッドは、個々のオブジェクトの状態に依存しないアクションを実行するように設計されています。
コード 1 で提供される例では、add() メソッドが静的として宣言されています。単純に 2 つの整数を受け入れ、その合計を返します。インスタンス固有の情報に依存しないため、B オブジェクトを作成せずに A.add() を使用して実行できます。
非静的メソッド
対照的に、非静的メソッドは、そのクラスから作成されたオブジェクトにバインドされます。このメソッドを呼び出すには、クラスのインスタンスを作成する必要があります。非静的メソッドは通常、インスタンス固有のデータを操作するか、オブジェクトの状態に依存するアクションを実行します。
コード 2 では、add() メソッドの static キーワードが削除されました。ここで、A クラスの i インスタンス変数を操作します。このメソッドを呼び出すには、main() メソッドに示すように、A のインスタンスを作成する必要があります。
主な違い
静的と非静的の主な違い静的メソッドはオブジェクトとの関連付けにあります。静的メソッドはクラス自体を通じてアクセスできますが、非静的メソッドにはオブジェクトのインスタンス化が必要です。さらに、静的メソッドはインスタンス レベルのデータを操作できませんが、非静的メソッドは操作できます。
つまり、操作が個々のオブジェクトの状態に依存しない場合は静的メソッドが優先され、非静的メソッドは次の場合に使用されます。操作にはインスタンス固有のデータまたは動作が含まれます。この違いを理解することで、Java コードで OOP 原則を効果的に活用できます。
以上がJavaの静的メソッドと非静的メソッドの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。