La signature d'une méthode dans une classe/interface Java inclut-elle son type de retour ?
Exemple :
Java connaît-il la différence entre ces deux méthodes ?
public class Foo {
public int myMethod(int param) {}
public char myMethod(int param) {}
}
Ou bien est-ce que seuls le nom de la méthode et la liste des paramètres comptent ?
7 votes
À propos, il y avait un bogue dans la gestion des génériques en Java 6 qui vous permettait d'avoir les deux méthodes, car la JVM utilise le type de retour dans la signature et les appelle sélectivement. Ce problème a été corrigé dans Java 7. vanillajava.blogspot.co.uk/2011/02/