我有这样的情况:
public Map<A, List<B>> methodA() { ... }
其中
B
是:
public abstract class B<T> { ... }
这使得声纳抱怨,告诉我
Provide the parametrized type for this generic.
但是如果我将其更改为List<B<?>>
声纳也会抱怨,告诉我Remove usage of generic wildcard type.
我不知道如何解决这个问题。
声明它
public <T> Map<A, List<B<T>>> methodA() { ... }
,然后T
就可以自由地由调用者决定,
Map<A, List<B<String>> result = yourClass.methodA();