[Explained] Comment appeler une méthode en Java
En Java, une méthode se présente comme un bloc de code réutilisable, conçu pour être exécuté à la demande. Ces blocs sont souvent appelés fonctions, et ces deux termes sont fréquemment utilisés de manière interchangeable.
Pourquoi utiliser des méthodes ou fonctions ?
Les développeurs de logiciels abordent la résolution de problèmes en les segmentant en sous-problèmes plus gérables, puis en s'attaquant à chacun d'eux pour aboutir à la solution globale. Cette stratégie a mené au développement de l'architecture modulaire. Dans cette approche, le code est découpé en modules indépendants, qui peuvent être déplacés et exécutés individuellement pour contribuer à la résolution d'un défi plus vaste.
L'attrait des méthodes réside dans leur capacité à être employées à divers endroits au sein d'une application. Par exemple, si vous désirez créer une fonctionnalité pour éliminer les espaces superflus d'une phrase, serait-il judicieux de réécrire la même logique à chaque endroit où vous en avez besoin ?
Ou ne serait-il pas plus judicieux de définir cette méthode une seule fois, puis de l'utiliser avec différentes données d'entrée dans l'ensemble de l'application ? La seconde option est indéniablement plus avantageuse et efficace.
De plus, grâce aux modificateurs d'accès de Java, vous avez la possibilité de contrôler quelles méthodes sont accessibles à travers l'application et celles qui sont réservées. Cela améliore la lisibilité, l'organisation et la structure de votre code.
Les différentes catégories de méthodes en Java
Java distingue deux types de méthodes : celles définies par l'utilisateur et celles qui sont prédéfinies. Les méthodes définies par l'utilisateur, comme leur nom l'indique, sont créées par le développeur. En voici un exemple :
public int somme(int a, int b) {
return a + b;
}
À l'opposé, les méthodes prédéfinies ou intégrées sont celles qui sont déjà disponibles dans le langage Java. En voici un exemple :
String texte = "Bonjour le monde"; texte.toLowerCase();
Dans cet exemple, `toLowerCase` est une méthode Java intégrée que vous pouvez appeler de n'importe quel emplacement dans votre code.
Structure d'une méthode en Java
Voici la structure typique d'une méthode en Java :
[modificateur_accès] [type_retour] nom_methode(...paramètres) {
// corps de la méthode
}
Ces composantes d'une méthode doivent être définies dans cet ordre. Par exemple, le type de retour doit précéder la définition de la méthode. Voyons en détail le rôle de chaque composante et leur interaction.
#1. Modificateur d'accès
En Java, les modificateurs d'accès sont des mots-clés qui contrôlent la visibilité d'une méthode, d'une classe, d'une interface ou d'une variable. Il existe cinq modificateurs d'accès en Java :
public: accessible depuis n'importe quelle classe.private: uniquement accessible depuis la classe où elle est définie.default: équivalent au modificateurprotected, car la méthode n'est accessible que depuis le même package.protected: accessible depuis les sous-classes ou depuis le même package.
public int somme(int a, int b) {
return a + b;
}
Dans cet exemple, le modificateur d'accès de la méthode `somme` est `public`, ce qui signifie qu'elle est accessible de partout.
#2. Type de retour
Le type de retour d'une fonction précise la nature des données que la fonction va renvoyer. Si la fonction ne doit rien retourner, il faut spécifier le type de retour `void`. Le mot-clé `return` ne peut être utilisé que lorsqu'un type de retour autre que `void` est spécifié. Le type de retour est une partie essentielle de la définition d'une fonction.
public void afficher(String texte) {
System.out.println(texte);
}
La méthode ci-dessus n'a pas de valeur de retour ; elle se contente d'afficher du texte à la console. C'est pourquoi son type de retour est `void`.
#3. Nom de la méthode
Le nom de la méthode sert à identifier la méthode au sein de sa classe. Il est utilisé pour l'appeler à partir d'un objet.
class Affichage {
void afficher(String texte) {
System.out.println(texte);
}
}
Affichage a = new Affichage();
a.afficher("bonjour le monde"); // affichera "bonjour le monde"
#4. Paramètres
Vous pouvez transmettre des arguments à une méthode par l'intermédiaire des paramètres définis. Par exemple, si une méthode a deux paramètres, vous devez lui fournir deux arguments dont les types de données correspondent. L'ordre des arguments doit également être respecté.
class Calcul {
int somme(int a, int b) {
return a + b;
}
}
Calcul calcul = new Calcul();
calcul.somme(3, 7); // retournera 10
#5. Corps de la méthode
Le corps de la méthode contient la logique de programmation qui permet d'obtenir un résultat particulier. Il implémente la fonction que la méthode est censée accomplir. Il est délimité par des accolades et est souvent appelé bloc de code.
class Calcul {
int somme(int a, int b) {
return a + b;
}
}
Dans cet exemple, l'instruction `return` à l'intérieur des accolades constitue le corps de la méthode `somme`.
Comment appeler des méthodes en Java
L'appel d'une méthode en Java est relativement simple. Il suffit d'utiliser son nom à partir d'une instance de la classe dans laquelle elle est définie.
Les méthodes statiques peuvent être invoquées sans avoir à créer d'objet de la classe où elles résident. À l'inverse, les méthodes non statiques doivent être appelées à partir d'une instance de la classe, c'est-à-dire à partir d'un objet.
Pour appeler une méthode statique, la syntaxe est la suivante :
class Math {
public static int somme(int a, int b) {
return a + b;
}
}
public class Main {
public static void main(String[] args) {
int addition = Math.somme(5, 2);
System.out.println(addition);
}
}
Dans le code ci-dessus, la méthode `somme` de la classe `Math` est statique. Il n'est donc pas nécessaire de créer une instance de la classe `Math` pour l'appeler ; vous pouvez simplement l'invoquer depuis la classe elle-même.
En revanche, pour appeler une méthode non statique, la syntaxe est la suivante :
class Math {
public int somme(int a, int b) {
return a + b;
}
}
public class Main {
public static void main(String[] args) {
int addition = new Math().somme(5, 2);
System.out.println(addition);
}
}
Dans ce cas, vous créez un nouvel objet à partir de la classe `Math`, puis vous appelez la méthode `somme`. Cela est dû au fait que les méthodes non statiques ne sont instanciées qu'une fois que la classe est instanciée.
Voilà comment appeler une méthode en Java.
Pour conclure
Les méthodes, qu'elles soient utilisées en Java ou dans d'autres langages de programmation, sont un excellent outil pour organiser votre code et le réutiliser à plusieurs endroits. Elles constituent les pierres angulaires d'une architecture modulaire et orientée composant.
Si Java vous intéresse, n'hésitez pas à approfondir vos connaissances en explorant la gestion des exceptions en Java.