匿名オブジェクトはクラス インスタンスを作成する必要がなく、必要に応じて new を使用してすぐに作成して使用できます。それらの用途には以下が含まれます。 短期使用: 1 回限りの操作として使用される場合。匿名コールバック: オブジェクトを関数パラメータとして渡すとき。カスタム コンパレータ: コレクションまたは配列を並べ替える場合。動的プロキシ: 匿名の内部クラスを使用してプロキシを作成する場合。イベント処理: イベントリスナーを登録するとき。

#Java における匿名オブジェクトの目的
匿名オブジェクトは、クラス インスタンスの作成を必要としないオブジェクトです。これらは、必要に応じてキーワード
new を使用して作成され、すぐに使用されます。
使用シナリオ:
- 短期使用: 1 回限りの操作に必要なオブジェクトが 1 つだけの場合。
- 匿名コールバック: 関数オブジェクトを受け入れるメソッドにオブジェクトをパラメータとして渡す必要がある場合。
- カスタム コンパレータ: コレクションまたは配列を並べ替えるための一時的なコンパレータを作成します。
- 動的プロキシ: 匿名の内部クラスを使用して動的プロキシを作成すると、別のプロキシ クラスを作成する必要がなくなります。
- イベント処理: イベント駆動型環境では、匿名オブジェクトを使用してイベント リスナーを登録できます。
実際のケース:
匿名コンパレータ:
1 2 3 4 5 6 7 | Comparator<String> lengthComparator = new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return s1.length() - s2.length();
}
};
|
ログイン後にコピー
匿名スレッド:
1 2 3 4 5 6 7 | new Thread( new Runnable() {
@Override
public void run() {
System.out.println( "匿名线程正在运行" );
}
}).start();
|
ログイン後にコピー
匿名コールバック:
1 2 3 4 5 6 7 | doSomething( new Function<String, Integer>() {
@Override
public Integer apply(String s) {
return s.length();
}
});
|
ログイン後にコピー
匿名オブジェクトは、永続クラスを定義せずに一時オブジェクトを作成する柔軟性を提供します。これらは、短期間の使用、匿名コールバック、またはカスタム コンパレータが必要な場合などに役立ちます。
以上がJava での匿名オブジェクトの使用シナリオは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。