Surcharge de Méthode
Glissez pour afficher le menu
Qu'est-ce que la surcharge de méthode ?
La surcharge de méthode en Java permet de définir plusieurs méthodes portant le même nom au sein d'une même classe, à condition que chaque méthode possède un ensemble de paramètres différent. Les différences peuvent porter sur le nombre de paramètres, leurs types, ou les deux. Cette fonctionnalité permet de créer un code flexible et lisible en regroupant des opérations liées sous un même nom de méthode, tout en gérant différents scénarios d'entrée.
Main.java
123456789101112131415161718192021package com.example; public class Main { public static void main(String[] args) { print("Hello, world!"); print(42); print("Sum:", 10, 20); } public static void print(String message) { System.out.println("String: " + message); } public static void print(int number) { System.out.println("Int: " + number); } public static void print(String label, int a, int b) { System.out.println(label + " " + (a + b)); } }
Explication :
- Les méthodes
printdiffèrent par le type et le nombre de paramètres :- Une méthode prend un seul argument de type
String; - Une autre prend un seul argument de type
int; - La troisième prend un
Stringet deux arguments de typeint.
- Une méthode prend un seul argument de type
- Java détermine quelle méthode appeler en fonction du nombre et du type des arguments fournis. Lorsque vous appelez
print("Hello, world!"), Java associe la méthode avec un seul paramètre de typeString. Pourprint(42), Java sélectionne la méthode avec un seul paramètre de typeint. Lorsque vous appelezprint("Sum:", 10, 20), Java utilise la méthode avec unStringet deux paramètres de typeint.
Maîtriser la surcharge de méthodes permet d'écrire un code plus flexible et lisible. En définissant plusieurs versions d'une méthode avec des listes de paramètres différentes, il est possible de gérer une variété de types d'entrées et de scénarios sans encombrer la base de code avec des noms de méthodes sans rapport. Ceci est particulièrement utile lors de la conception d'API, de classes utilitaires ou d'opérations mathématiques où des actions similaires sont effectuées sur différents types de données ou nombres d'arguments.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion