2.3 Surcharge

Mécanisme qui permet d’avoir plusieurs méthodes portant le même nom, qui se différencient par leur nombre et/ leurs types de paramètres.

// Exemple avec les différents constructeurs de la classe Chat
Chat voyou = new Chat("Voyou") // Un seul parametre : prenom
Chat gandhi = new Chat("Gandhi",4,"Axel") // Trois parametres : prenom, age, maitre
Chat pouloute = new Chat("Pouloute",1.2) // Deux parametres : prenom, poids

Il n’est pas possible de surcharger par type de retour : on surcharge sur les paramètres d’entrée !

public class TestSurcharge {

    public double getValue(){
        // ...
    }
    // erreur de compilation : getValue() est déjà définie
    public char getValue(){
        // ... 
    }
}