La notion de surcharge

Une méthode est surchargée lorqu’elle exécute des actions différentes selon le type et le nombre de paramètres transmis.

Exemple :
class Affiche {
public void afficheValeur(int i) {
System.out.println("nombre entier =" + i);
}
public void afficheValeur(float f) {
System.out.println("nombre flottant = " +f);
}
}

Il n’est pas possible d’avoir deux méthodes de même noms dont tous les paramètres sont identiques et dont seul le type retourné diffère.

Exemple :
class Affiche {
public float convert(int i) {
return ((float) i);
}
public double convert(int i) {
return ((double) i);
}
}

Résultat à la compilation :
C:\>javac Affiche.java
Affiche.java:5: Methods can’t be redefined with a different return type:
double convert(int) was float convert(int)
public double convert(int i){
^
1 error

Laboratoire SUPINFO des technologies Sun
labo-sun@supinfo.com


Conditions d'utilisation et © Copyright SUPINFO International University
23, rue de Château Landon - 75010 PARIS - Tél : +33 (0) 153359700 Fax : +33 (0) 153359701
Respect de la vie privée