ホームページ >Java >&#&チュートリアル >Java の匿名クラスは必ず Final クラスになるのでしょうか?
いいえ、Java の匿名クラスは必ずしも最終クラスである必要はありません。匿名クラスはデフォルトでは Final ですが、abstract 修飾子を使用するか、non-final フィールドを宣言してサブクラス化を有効にしたり、内部状態を変更したりすることで、non-final にすることができます。
#Java の匿名クラスは必ず Final クラスですか?
回答: いいえ、Java の匿名クラスは必ずしも最終クラスである必要はありません。
詳細な説明:
匿名クラスは、クラス名を持たず、new キーワードを直接使用します。創造。デフォルトでは、匿名クラスは最終クラスですが、次の方法で非最終クラスにすることができます。
修飾子を使用します。
<code class="java">Runnable runnable = new Runnable() { @Override public void run() { // ... } };</code>
<code class="java">Object object = new Object() { int value; };</code>非最終クラスはサブクラス化することも内部状態を変更することもできるため、これらの機能が必要な場合に使用してください。必要な非最終匿名クラスは便利です。ただし、コードの理解と保守が困難になるため、ほとんどの場合、これはお勧めできません。 一般的に、匿名クラスは不変性を確保し、不必要な変更を防ぐために、final のままにしておく必要があります。
以上がJava の匿名クラスは必ず Final クラスになるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。