Java >> Tutoriel Java >  >> Java

Fonctions en java

L'objectif de chaque programmeur est de gagner du temps à la fois dans la programmation et le débogage. Cependant, il arrive un moment où vous écrivez des centaines de lignes de code. C'est très frustrant de devoir répéter le même code de temps en temps. C'est plus frustrant lorsque votre code reçoit une erreur et vous devrez déboguer tout le programme.

Améliorez votre expertise en programmation en utilisant des fonctions. Les fonctions aident à éviter l'ambiguïté. Vous conviendrez que décomposer le code en petits morceaux dans les fonctions vous aidera à organiser votre travail, et le débogage devient facile. Pourquoi répéter les mêmes lignes de code à plusieurs endroits où vous pouvez les mettre dans une fonction et l'appeler chaque fois que vous avez besoin d'effectuer cette tâche. La réutilisation du code permet de gagner beaucoup de temps.

Dans ce didacticiel, nous allons épargner du temps et discuter des fonctions. En java, une méthode est identique à une fonction. Toutes les fonctions doivent être définies dans une classe. Par là, on peut résumer en définissant une méthode Java comme une fonction appartenant à une classe. Une fonction est une unité de code nommée qui peut être invoquée n'importe où dans la classe.

Exemple :

public class Main {
    public static void myFuntion() {
        // Do something here
    }
}

Syntaxe d'une fonction

Public static void myFuction(String name, int age )
{
// fuction code
}
  • Spécificateur d'accès – cela indique l'étendue de la disponibilité d'une fonction. "Public" signifie que la fonction peut être appelée de n'importe où dans le programme. Nous avons d'autres spécificateurs d'accès tels que private et protected. Protected, la méthode ne peut être appelée qu'au sein de la classe et de ses sous-slcasses. Private ne peut être appelé qu'à l'intérieur de la classe
  • Modificateur – 'static' est facultatif dans une définition de fonction. Dans ce cas, statique signifie que la fonction n'est pas un objet de la classe principale mais une méthode qui appartient à la classe principale.
  • Type de retour – Nous avons des fonctions qui retournent une valeur et des fonctions qui ne retournent rien. Void, signifie que la fonction n'a pas de valeur de retour. Si la fonction était de renvoyer une valeur, remplacez void par le type de données de la valeur renvoyée.
  • Nom de la fonction – C'est le nom de la fonction
  • Liste des paramètres – il informe le compilateur du type de données qu'il va recevoir et de la valeur à retourner.

Avantages des fonctions en Java

  1. Réutilisabilité du code – les fonctions aident à supprimer la répétition de code dans un programme. Avec les fonctions, vous pouvez le définir une fois et l'appeler n'importe où dans le programme pour effectuer la tâche dont vous avez besoin et vous n'êtes pas limité au nombre de fois que vous appelez la fonction. Enfin, il est simple de replacer les fonctions dans des bibliothèques. Cela leur permet d'être utilisés par plus d'un programme.

2. Diviser pour régner - L'utilisation de fonctions aide à diviser un programme en plus petits morceaux gérables, facilitant ainsi le débogage et les tests. Les fonctions facilitent la collaboration en divisant le travail en tâches pour le développement de l'équipe.

Types de fonctions

Fonctions de calcul – ces fonctions effectuent des opérations mathématiques et renvoient le résultat. par exemple, Mathématiques. sqrt. ()

Fonctions de manipulation – ils renvoient 0 ou 1, représentant le succès ou l'échec d'une opération.

Fonctions procédurales – ce sont principalement les fonctions intégrées. Ils effectuent une action mais ne renvoient pas de valeur, par exemple, System.out.print()

Comment appeler une fonction en Java

Appeler une méthode statique

Nous pouvons appeler une méthode en écrivant le nom de la méthode suivi de la parenthèse et d'un point-virgule. Lorsqu'une méthode est appelée, la tâche du programme à exécuter est transférée à la méthode.
Exemple :

public class myFunction {
 
    static void functionExample() {
        System.out.println("You have called me! My name is: functionExample!");
    }
 
    public static void main(String[] args) {
        fuctionExample();
    }
}

Sortie :

You have called me! My name is: functionExample!

À partir de l'exemple ci-dessus, nous avons appelé une méthode statique. Pour appeler une méthode statique, nous n'avons pas besoin de créer un objet de la classe dans laquelle la méthode est définie.

Appeler une méthode prédéfinie

Ce sont des méthodes prédéfinies dans les classes. Pour appeler cette méthode, vous pouvez les appeler par leur nom. Vous devrez créer un objet car il s'agit d'une méthode de l'objet de classe.

    public class myfunction  
    {  
    public static void main(String[] args)   
    {  
    int a = 49;      
    double ans=Math.sqrt(a);  
    System.out.println("The square root of the object is: "+ans);  
    }  
    }  

Appeler une méthode définie par l'utilisateur

C'est ici que nous créons une méthode et que nous l'appelons lorsque nous avons besoin de l'utiliser. La méthode définie par l'utilisateur peut être une méthode statique ou une méthode non statique.

public class functionExample  
    {  
  
    //user-defined static method
    static void show()   
     {  
       System.out.println("This is a static method.");  
     }  
    //user-defined non-static method  
    void display()   
    {  
    System.out.println("This is a non-static method.");  
    }  
    public static void main(String[] args)   
    {  
    //calling static method without using the object  
    show();
      
    //creating an object of the class  
    functionExample fun=new functionExample();  
    //calling non-static method  
    fun.display(); 
    }  
    }  

À partir de l'exemple ci-dessus, nous avons créé une méthode statique définie par l'utilisateur show() et les méthodes non statiques définies par l'utilisateur display() . Nous appelons une méthode statique directement sans créer d'objet, mais pour une méthode non statique, nous avons créé un objet de la classe pour l'appeler.

Surcharge de méthode

La surcharge de méthode se produit lorsque la classe contient deux ou plusieurs méthodes portant le même nom. Les méthodes peuvent être différenciées par le nombre de paramètres, le type de retour ou le type de paramètres.
Exemple :

int sum( int a, int b);
double sum( double a, double b);

Les deux méthodes ci-dessus ont le même nom mais des types de retour différents. La première méthode renverra un int tandis que la deuxième méthode renverra un double.

int function(double number);
int function(double number, int position);

Dans l'exemple ci-dessus, les deux fonctions ont le même nom mais diffèrent par le nombre de paramètres. La première méthode a 1 paramètre, tandis que la seconde méthode contient 2 paramètres.

Le compilateur distingue quelle fonction est appelée en fonction de ce qui est passé lors de l'appel de la fonction.
Exemple :

public class Main
{
  static int sum(int a, int b)   
    {  
    return a + b;  
    } 
  static double sum(double a, double b)   
    {  
    return a + b;  
    }  
    
  public static void main(String[] args)   
    { 
        
    int x = sum(10, 20);  
    double y = sum(10.20,20.10);  
    
    System.out.println("Summation of integer values = " +x);  
    System.out.println("Summation of double values = " +y);  
    }  
}  

Sortie :

Summation of integer values = 30
Summation of double values = 30.3

Conclusion

En Java, les méthodes statiques appartiennent à une classe ; par conséquent, nous n'avons pas besoin de créer un objet lors de l'appel de ces méthodes. Cependant, pour la méthode non statique, nous devons créer un objet car les méthodes appartiennent à des objets. Les fonctions décrivent une action à effectuer. La création de fonctions aide à éviter l'ambiguïté du code dans votre programme et permet la réutilisation du code. Dans ce tutoriel, nous avons discuté de ce que sont les fonctions en Java, de la création des fonctions et de l'appel de la fonction.


Balise Java