静的変数はクラス レベルに属し、インスタンス変数はオブジェクト レベルに属します。
静的変数とインスタンス変数の間には 2 つの主な違いがあります:
1. 異なる格納場所
クラス変数はメソッド領域に存在します。インスタンス変数はオブジェクトの作成時にヒープメモリ上に存在します。
2. さまざまなライフ サイクル
クラス変数のライフ サイクルが最も長く、クラスがロードされるときにロードされ、クラスが消滅すると消滅します。インスタンス変数は、オブジェクトが消滅すると消滅します。
静的使用に関する注意:
1. 静的メソッドは静的メンバー (メンバー変数およびメンバー メソッドを含む) にのみアクセスできますが、非静的メンバーまたはメソッドにはアクセスできません。 。
非静的メソッドは、静的または非静的メソッドまたはメンバーにアクセスできます。
2. this キーワードと super キーワードは静的メソッドでは使用できません。
static はオブジェクトの存在に先行するため、this および super キーワードは使用できません。
3. main 関数は static です。
以上がJavaの静的変数とインスタンス変数の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。