Typage d'un paramètre d'une méthode issue d'une interface.
Bonjour,
J'ai un problème lié à l'utilisation d'une interface. Cette interface I possède une méthode avec un paramètre de type A.
Je déclare une classe C qui implémente cette interface. Elle doit donc implémenter cette méthode. Je l'implémente donc mais en choisissant comme type du paramètre B qui étend la classe A. Mais j'ai une erreur de compilation : Le type C doit implémenter la méthode abstraite héritée I.method(A).
Pourquoi ça ne marche pas ?
Voici la structure du code pour une meilleure visibilité.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
public class A {
}
public class B extends A {
}
public interface I {
public void method(A param);
}
public class C implements I {
public void method(B param);
} |
Merci d'avance.