blob: 3b94dfd82b4c43f7d98f300f6123da851ce7f4de [file] [log] [blame]
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public abstract class A<T extends A<
T,
S>, S extends List<
?>> {
T t;
S s;
A<
T,
S> a;
Object field = a.<T, S>getMap(t, s);
public A() {
<T, S>this(null, null);
}
public <M, N> A(M param1, N param2) {
}
public <M, N> Map<
M,
N> getMap(M key, N value) {
return null;
}
}
class B extends A<
B,
List<
String>> {
public <M, N> B(M param1, N param2) {
<M, N>super(param1, param2);
}
public <M, N> Map<
M,
N> getMap(M key, N value) {
B b = new <M, N>B(key, value);
AMethod method = b::<String, String>getMap;
AMethod method2 = super::<String, String>getMap;
AMethod method3 = AMap<
M>::<String, String>new;
AMethod method4 = AMap<
M>::<String, String>createAMap;
return super.<M, N>getMap(key, value);
}
}
interface AMethod {
Map<
String,
String> getMap(String key, String value);
}
class AMap<T> extends HashMap<
String,
String> {
public <M, N> AMap(String param1, String param2) {
}
public static <M, N> AMap<
M> createAMap(String param1, String param2) {
return new AMap<>(param1, param2);
}
}