У меня есть следующий код:
private HashMap<Class<?>, HashMap<Entity, ? extends Component>> m_componentStores;
public <T extends Component> T getComponent(Entity e, Class<T> exampleClass)
{
HashMap<Entity, ? extends Component> store = m_componentStores.get(exampleClass);
T result = (T)store.get(e);
if (result == null)
{
throw new IllegalArgumentException( "GET FAIL: "+e+" does not possess Component of class\nmissing: "+exampleClass );
}
return result;
}
Когда я компилирую, он показывает, что T result = (T)store.get(e)
имеет неконтролируемый отбор.
Type safety: Unchecked cast from capture#2-of ? extends Component to T
Что мне не хватает, чтобы предотвратить появление этого предупреждения?