0

指定された Java オブジェクト (クラスではない!) を実行時にリフレクションでマークする方法はありますか? 次に見たときに認識できるように、オブジェクトに関する何かを変更する方法はありますか?

または、そのような認識の唯一の方法は、オブジェクトを IdentityHashMap に格納することですか?

4

1 に答える 1

2

Java インスタンスは、デフォルトでは動的メタデータをサポートしていません。ただし、それらがあったとしても、それはあなたが説明していることの一種のアンチパターンです。

インスタンスの周りにメタデータを作成する必要がある場合、それを行う方法はたくさんありますが、最も簡単な方法は、オブジェクトをコレクションに登録し、永続的かどうかにかかわらず、その方法でメタデータを添付することです。

動的プロキシを使用して実行時にこれを実現できますが、これもお勧めしません。これを本当に必要とするシステムを構築している場合、特定のアプリケーション クラスにメタデータを追加したベース オブジェクトは、実装が簡単で、費用もかからず、複雑さも軽減されます。

于 2012-10-21T05:19:25.350 に答える