是否可以将嵌套的泛型/捕获绑定在一起?
我经常遇到将类的映射查找到所述类的通用项目的问题。具体来说,我想要这样的东西(不,T 没有在任何地方声明)。
private Map<Class<T>, ServiceLoader<T>> loaders = Maps.newHashMap();
简而言之,我希望 loaders.put/get 具有如下语义:
<T> ServiceLoader<T> get(Class<T> klass) {...}
<T> void put(Class<T> klass, ServiceLoader<T> loader) {...}
以下是我能做的最好的吗?我必须忍受不可避免的事情@SuppressWarnings("unchecked")
吗?
private Map<Class<?>, ServiceLoader<?>> loaders = Maps.newHashMap();