Je suis confronté à un problème de référence de méthode combinée à des types génériques.
Nous avons du code où nous devons appeler une méthode surchargée, mais il échoue avec une erreur:
Impossible de résoudre la valeur m1 ()
J'ai simplifié mon problème pour indiquer clairement où se situe le problème.
Le code suivant échoue:
public class Test {
void test() {
// Getting error here
setValue(C1::m1, Integer.ONE);
}
<E extends I1, T> void setValue(BiConsumer<E, T> cons, T value) {
}
}
interface I1 {
}
class C1 implements I1 {
void m1(Integer value) {
}
void m1(int value) {
}
}
Quelqu'un peut-il s'il vous plaît pourquoi cela se comporte comme ça?
Veuillez noter que cela n'est pas lié à la question Référence de la méthode Java 8 avec les types génériques