Java 言語では、static は「静的」を意味します。使用シナリオはメンバー変数やメンバー メソッドの変更に使用でき、もちろん静的コード ブロックにすることもできます。 static の主な機能は、特定のオブジェクトから独立したドメイン変数またはメソッドを作成することです。
形式:
変更後の変数: static データ型の変数名
変更後のメソッド: [アクセス権修飾子] static メソッドの戻り値メソッド名 ( パラメーターlist)
機能:
1. static は変数とメソッドを変更できます;
2. static によって変更された変数またはメソッドは Any オブジェクトから独立していますつまり、これらの変数とメソッドはどのインスタンス オブジェクトにも属していませんが、クラスのインスタンス オブジェクトによって共有されています;
3. クラスがロードされるとき、それはロードされます。 static によって変更された部分;
4. static によって変更された変数またはメソッドはオブジェクトより優先されます。つまり、クラスがロードされた後は、オブジェクトが作成されていなくてもアクセスできます。
静的変数とインスタンス変数の違い:
インスタンス変数: オブジェクトが作成されるたびに、各オブジェクトにメンバー変数のメモリ領域が割り当てられます。オブジェクトの場合、オブジェクトが作成されるたびにメモリ内に複数のメンバー変数が存在します。
静的変数: 静的変数はどのインスタンス オブジェクトにも属しませんが、クラスに属しているため、メモリ内にはコピーが 1 つだけ存在します。クラスのロード プロセス中に、JVM はメモリ スペースを 1 回だけ割り当てます。静的変数。
アプリケーション シナリオ:
メンバー変数がすべてのオブジェクトで共有される場合、このメンバー変数は静的変数として定義する必要があります。
注:
1. static メソッドには this キーワードはありません。これは、static メソッドはクラスのロードとともにロードされ、this はオブジェクトとともにロードされるためです。 . 存在するために創造されました。静的オブジェクトはオブジェクトより優先されます。
2. 静的は静的にアクセスできますが、静的は非静的にアクセスできません。
3. 非静的ものは静的ものにアクセスできます。
推奨チュートリアル: Java チュートリアル
以上がJavaの静的とは何ですか?どのように理解すればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。