English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base Java

Contrôle de flux Java

Java tableau

Java orienté objet (I)

Java orienté objet (II)

Java orienté objet (III)

Gestion des exceptions Java

Java Liste (List)

Java Queue (file d'attente)

Java Map collectif

Java Set collectif

Java entrée/sortie (I/O)

Java Reader/Writer

Autres sujets Java

Méthodes Java

Dans ce tutoriel, vous apprendrez à travers des exemples les méthodes Java, comment définir une méthode et comment utiliser une méthode dans un programme Java.

Qu'est-ce qu'une méthode ?

En mathématiques, nous avons peut-être étudié les fonctions. Par exemple, f(x) = x2x est une fonction qui retourne la valeur carrée.

Si x = 2, alors f(2) = 4
Si x = 3, f(3) = 9
et ainsi de suite.

De même, dans la programmation informatique, une fonction est un bloc de code exécutant une tâche spécifique.

Dans la programmation orientée objet, le terme méthode est utilisé pour les fonctions. La méthode est liée à la classe et définit le comportement de la classe.

Avant d'apprendre les méthodes, assurez-vous de comprendreJava classes and objects.

Types de méthodes Java

Selon que la méthode est définie par l'utilisateur ou disponible dans la bibliothèque standard, Java possède deux types de méthodes :

  • Méthodes de bibliothèque standard

  • Méthode définie par l'utilisateur

Méthodes de bibliothèque standard

 Les méthodes de bibliothèque standard sont des méthodes intégrées dans Java, qui peuvent être utilisées à tout moment. Ces bibliothèques standard apparaissent avec la bibliothèque de classes Java (JCL) dans les fichiers d'archive Java (JVM et JRE)。*.jar)。

Par exemple,

  • print() - C'est une méthode de java.io.PrintStream. La méthode print("…") imprime une chaîne de caractères entre guillemets.

  • sqrt() -  C'est une méthode de mathématiques. Elle retourne la racine carrée d'un nombre.

Voici un exemple fonctionnel :

public class Main {}}
    public static void main(String[] args) {
    
        //Utiliser la méthode sqrt()
        System.out.print("4La racine carrée est : " + Math.sqrt(4));
    }
}

Output:

4La racine carrée est : 2.0

Méthode définie par l'utilisateur

Nous pouvons également créer des méthodes de notre choix pour exécuter certaines tâches. Cette méthode est appelée méthode définie par l'utilisateur.

Comment créer une méthode définie par l'utilisateur ?

Voici la manière dont nous créons une méthode en Java :

public static void myMethod() {
    System.out.println("Mon fonction");
}

Ici, nous créons une méthode nommée myMethod(). Nous pouvons voir que nous avons utilisé public, static et void avant le nom de la méthode.

  • public - modificateur d'accès. Cela signifie que la méthode peut être appelée depuis n'importe où. Pour en savoir plus, visitezJava access modifiers

  • statique - Cela signifie que la méthode peut être appelée sans aucun objet. Pour en savoir plus, visitezJava static keyword.

  • void - Ce qui signifie que cette méthode ne renvoie aucune valeur. Nous en saurons plus à ce sujet dans une partie ultérieure de ce tutoriel.

Voici un exemple simple de la manière dont nous créons une méthode. Cependant, la syntaxe complète de la définition de méthode en Java est :

modificateur static typeDeRetour nomDeMéthode (paramètres) {
    // corps de méthode
}

Ici,

  • modificateur - Il définit l'accès aux méthodes comme des méthodes publiques, privées, etc.

  • statique - Si l'on utilise la clé statique, il n'est pas nécessaire de créer d'objet pour y accéder.
    Par exemple, la méthode sqrt() de la classe standard Math est statique. Par conséquent, nous pouvons appeler Math.sqrt() directement sans créer d'instance de la classe Math.

  • typeDeRetour - Il spécifie le type de valeur renvoyée par la méthode. Par exemple, si la méthode a un type de retour int, elle renvoie une valeur entière.
    Une méthode qui peut renvoyer un type de données primitif (int, float, double, etc.), un objet natif (String, Map, List, etc.) ou tout autre objet intégré et utilisateur défini.
    Si la méthode ne renvoie pas de valeur, son type de retour est void.

  • nomDeMéthode - C'est unidentificateurpour faire référence à une méthode spécifique dans le programme.
    Nous pouvons donner n'importe quel nom à la méthode. Cependant, le nommer en fonction de la tâche qu'elle exécute est une pratique plus courante. Par exemple calculateArea(), display() et autres.

  • paramètres (arguments) - Ce sont les valeurs passées à la méthode. Nous pouvons passer un nombre quelconque de paramètres à la méthode.

  • corps de méthode - Elle comprend des instructions de programmation utilisées pour exécuter certaines tâches. Le corps de la méthode est inclus entre accolades { }.

    Comment appeler une méthode Java ?

    Maintenant que nous savons comment définir une méthode, nous devons apprendre à les utiliser. Pour cela, nous devons appeler cette méthode. Voici comment faire

    myMethod();

    Cette instruction appelle la méthode préalablement déclarée myMethod().

    Schéma de processus de appel de méthode en Java
    1.  En exécutant le code du programme, il rencontre myFunction() dans le code.

    2.  Ensuite, exécutez la branche vers la méthode myFunction() et exécutez le code à l'intérieur de la méthode.

    3.  Après l'exécution du corps de la méthode, le programme revient à son état d'origine et exécute la prochaine instruction après l'appel de la méthode.

    Exemple : méthode Java

    Voyons comment utiliser les méthodes dans un programme Java.

    class Main {
        public static void main(String[] args) {
            System.out.println("Nous allons rencontrer un type de méthode.");
            //appeler la méthode
            myMethod();
            System.out.println("La méthode a été exécutée avec succès !");
        }
        // définition de la méthode
        private static void myMethod(){
            System.out.println("Impression à partir de l'intérieur de myMethod!");
        }
    }

    Output:

    Nous allons rencontrer un type de méthode.
    Impression à partir de l'intérieur de myMethod!
    La méthode a été exécutée avec succès !

    Dans le programme précédent, nous avons une méthode nommée myMethod(). Cette méthode ne prend pas de paramètres. De plus, le type de retour de cette méthode est void (ce qui signifie qu'elle ne retourne aucune valeur).

    Dans cet exemple, la méthode est statique. Par conséquent, nous avons appelé cette méthode sans créer d'objet de la classe.

    Regardons un autre exemple

    class Main {
        public static void main(String[] args) {
            //Création d'un objet de la classe Output
            Output obj = new Output();
            System.out.println("Nous allons rencontrer une méthode.");
            //Appel de myMethod() de la classe Output
            obj.myMethod();
            System.out.println("La méthode a été exécutée avec succès !");
        }
    }
    class Output {
      
        //public : cette méthode peut être appelée depuis l'extérieur de la classe
        public void myMethod() {
            System.out.println("Impression à partir de l'intérieur de myMethod().");
        }
    }

    Output:

    Nous allons rencontrer une méthode.
    Impression à partir de l'intérieur de myMethod()
    La méthode a été exécutée avec succès !

    Dans l'exemple précédent, nous avons créé une méthode nommée myMethod(). Cette méthode se trouve dans la classe nommée Output.

    Puisque la méthode n'est pas statique, nous utilisons l'objet de la classe obj pour appeler cette méthode.

    obj.myMethod();

    Paramètres de méthode et valeurs de retour

    Comme mentionné précédemment, les méthodes Java peuvent avoir zéro ou plusieurs paramètres. Et elles peuvent également retourner certaines valeurs.

    Exemple : valeur de retour de la méthode

    Nous allons prendre un exemple de méthode avec retour de valeur.

    class SquareMain {
        public static void main(String[] args) {
            int result;
            //Appel de la méthode et stockage de la valeur de retour
            result = square(); 
            System.out.println("10la valeur carrée est : " + result);
        }
        public static int square() {
            //return instruction
            return 10 * 10;
        }
    }

    Output:

    10le carré est: 100

    Dans le programme ci-dessus, nous avons créé une méthode nommée square(). Cette méthode n'accepte aucun paramètre et renvoie une valeur de10 *10.

    Ici, le type de retour de la méthode mentionnée est int. Par conséquent, cette méthode doit toujours renvoyer une valeur entière.

    représentation de la méthode renvoyant une valeur

    Comme nous l'avons vu, la portée de cette méthode est limitée, car elle renvoie toujours la même valeur. Maintenant, modifions ce fragment de code pour qu'il renvoie toujours le carré de tout entier passé à la méthode, et non pas10la valeur carrée.

    Exemple : méthode acceptant des paramètres et renvoyant des valeurs

    public class Main {}}
       
        public static void main(String[] args) {
            int result, n;
            
            n = 3;
            result = square(n);
            System.out.println("3le carré est: " + result);
            
            n = 4;
            result = square(n); 
            System.out.println("4le carré est: " + result);
        }
        // method
        static int square(int i) {
            return i * i;
        }
    }

    Output:

    3is: 9
    4is: 16

    Ici, la méthode square()accepte un paramètre i et renvoie le carré de i. La valeur renvoyée est stockée dans la variable result.

    Passer des paramètres en Java et renvoyer des valeurs depuis une méthode

    Si nous passons un autre type de données que des valeurs de type int, le compilateur générera une erreur. Cela est dû au fait que Java est un langage fortement typé.

     Les paramètres passés à la méthode getSquare() pendant l'appel de la méthode sont appelés paramètres réels.

    result = getSquare(n);

     Les paramètres acceptés par la définition de la méthode sont appelés paramètres formels. Le type des paramètres formels doit être explicitement typé.

    public static int square(int i) {...}

    Nous pouvons également utiliser la virgule pour passer plusieurs paramètres à une méthode Java. Par exemple,

    public class Main {}}
        //method definition
        public static int getIntegerSum (int i, int j) {
            return i + j;
        }
        // method definition
        public static int multiplyInteger (int x, int y) {
            return x * y;
        }
        public static void main(String[] args) {
            //appeler la méthode
            System.out.println("10 + 20 = " + getIntegerSum(10, 20));
            System.out.println("20 x 40 = " + multiplyInteger(20, 40));
        }
    }

    Output:

    10 + 20 = 30
    20 x 40 = 800

    Attention: Le type de données des paramètres réels et des paramètres formels doit correspondre, c'est-à-dire que le type de données du premier paramètre réel doit correspondre au type de données du premier paramètre formel. De même, le type du deuxième paramètre réel doit correspondre au type du deuxième paramètre formel, et ainsi de suite.

    Quels sont les avantages de l'utilisation de la méthode ?

    1. Les principaux avantages sontréutilisation du code。Nous pouvons écrire une méthode une fois et l'utiliser plusieurs fois. Nous n'avons pas besoin de réécrire tout le code à chaque fois. On peut le considérer comme un “une fois écrit, à utiliser plusieurs fois”。Par exemple,

    public class Main {}}
        //method definition
        private static int getSquare(int x){
            return x * x;
        }
        public static void main(String[] args) {
            for (int i = 1; i <= 5; i++) {
                //method call
                int result = getSquare(i);
                System.out.println("" + i + "The square of " + result);
            }
        }
    }

    Output:

    1 is: 1
    2 is: 4
    3 is: 9
    4 is: 16
    5 is: 25

     In the above program, we created a method named getSquare() to calculate the square of a number. Here, we calculate the square of numbers less than6square of the number.

     Therefore, we repeatedly use the same method

    method2Make the codeMore readable,Easier to debugFor example, the getSquare() method is very readable, so we can know that this method calculates the square of a number.