我怎样才能对类似 Map<S,Map<Class<T>,T>>
这样的东西进行类型安全处理?对于任何类型?
如果我使用该公式,则 map 将仅包含具体的 S、T 类型。如果我使用通配符,Map<?,Map<Class<?>,?>>
, 最后 2 个通配符将不会强制相关。
有什么解决办法吗?
最佳答案
您可以创建一个类来保持这种关系。
public class ClassMap<T> extends HashMap<Class<T>, T> {}
然后你可以这样写:
Map<?, ClassMap<?>>
关于java - 有没有办法在类类型的定义中重用通用通配符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40109685/