Bloch の効果的な Java から異種コンテナー パターンをチェックアウトしており、異種コンテナーにオブジェクトを挿入するときにクラス参照が必要な理由を判断しようとしています。instance.getClass()
この参照を取得するために使用できませんか? JPAのエンティティマネージャーがその例ではないでしょうか?
interface BlochsHeterogeneousContainer {
<T> void put(Class<T> clazz, T instance);
<T> T get(Class<T> clazz);
}
interface AlternativeHeterogeneousContainer {
// Class<T> not needed because we can use instance.getClass()
<T> void put(T instance);
<T> T get(Class<T> clazz);
}