Я пытаюсь следовать за Джошуа Блохом » s шаблон безопасного типа гетерогенного контейнера из Effective Java для создания контейнера объектов ( MyGeneric
) с ключом Class
.
public class MyClass {
private Map<Class<?>, MyGeneric<?>> myContainer =
new HashMap<Class<?>, MyGeneric<?>>();
public <T> void addToContainer(Class<T> class, MyGeneric<T> thing) {
myContainer.put(class, thing);
}
public <T> MyGeneric<T> getFromContainer(Class<T> class) {
return (MyGeneric<T>)(myContainer.get(klass));
}
}
Проблема в getFromContainer I. необходимо выполнить непроверенное приведение. В контейнере Джоша Блоха он выполняет безопасное заклинание - но в моем случае я не вижу способа, как это возможно.
Есть ли у кого-нибудь какие-нибудь идеи?
Ура, Ник.