Méthodes C# : définition, appel et utilisation des fonctions
Une méthode est un groupe d'instructions qui effectue une tâche. Tout programme C# a au moins une classe avec une méthode nommée Main.
Pour utiliser une méthode, il faut :
- La définir
- L'appeler
Définition d'une méthode en C#
Syntaxe :
<SpécificateurAccès> <TypeRetour> <NomMéthode>(ListeParamètres)
{
// Corps de la méthode
}
Éléments d'une méthode
- Spécificateur d'accès : visibilité depuis une autre classe
- Type de retour : type de la valeur retournée,
voidsi rien n'est retourné - Nom de la méthode : identifiant unique, sensible à la casse
- Liste de paramètres : type, ordre et nombre des paramètres (optionnel)
- Corps de la méthode : instructions pour accomplir la tâche
Exemple : méthode FindMax
class ManipulateurNombres
{
public int TrouverMax(int num1, int num2)
{
int resultat;
if (num1 > num2)
resultat = num1;
else
resultat = num2;
return resultat;
}
}
Appel de méthodes
On appelle une méthode par son nom :
using System;
namespace ApplicationCalculatrice
{
class ManipulateurNombres
{
public int TrouverMax(int num1, int num2)
{
int resultat;
if (num1 > num2)
resultat = num1;
else
resultat = num2;
return resultat;
}
static void Main(string[] args)
{
int a = 100;
int b = 200;
int ret;
ManipulateurNombres n = new ManipulateurNombres();
ret = n.TrouverMax(a, b);
Console.WriteLine("Valeur max : {0}", ret);
Console.ReadLine();
}
}
}
Résultat :
Valeur max : 200
On peut aussi appeler une méthode publique depuis une autre classe via une instance.
Appel de méthode récursif
Une méthode peut s'appeler elle-même : récursion.
Exemple : factorielle
using System;
namespace ApplicationCalculatrice
{
class ManipulateurNombres
{
public int Factorielle(int num)
{
if (num == 1)
return 1;
else
return Factorielle(num - 1) * num;
}
static void Main(string[] args)
{
ManipulateurNombres n = new ManipulateurNombres();
Console.WriteLine("Factorielle de 6 : {0}", n.Factorielle(6));
Console.WriteLine("Factorielle de 7 : {0}", n.Factorielle(7));
Console.WriteLine("Factorielle de 8 : {0}", n.Factorielle(8));
Console.ReadLine();
}
}
}
Résultat :
Factorielle de 6 : 720
Factorielle de 7 : 5040
Factorielle de 8 : 40320
Passage de paramètres
Trois mécanismes :
| # | Mécanisme & Description |
|---|---|
| 1 | Paramètres par valeur : copie la valeur réelle. Modifications sans effet sur l'argument original. |
| 2 | Paramètres par référence (ref) : copie la référence mémoire. Modifications affectent l'argument. |
| 3 | Paramètres de sortie (out) : permet de retourner plusieurs valeurs. |
Langue C
- Maîtriser les classes et méthodes abstraites C# : Guide pratique
- Comprendre les classes et méthodes partielles C#
- Maîtriser les classes et méthodes sealed en C# : Quand les utiliser, exemples clairs et sécurité du code
- Maîtriser la surcharge de méthodes en C# : Concepts, exemples et bonnes pratiques
- Maîtriser les fonctions en C : Structure, déclaration et bonnes pratiques
- Utilisation efficace de la mémoire avec les champs de bits en C
- Maîtriser les arguments variables en C : Guide pratique
- Java 8 : Méthodes par défaut (default) dans les interfaces — Compatibilité ascendante
- Maîtriser l'intégration MATLAB : des primitives aux sommes de Riemann