Méthodes Ruby
Les méthodes Ruby sont similaires aux fonctions d'autres langages de programmation. Les méthodes Ruby servent à regrouper une ou plusieurs instructions répétées en une seule unité.
Les noms de méthodes doivent commencer par une lettre minuscule. Si vous commencez un nom de méthode par une lettre majuscule, Ruby peut le traiter comme une constante, ce qui fait que l'appel est analysé incorrectement.
Les méthodes doivent être définies avant d'être appelées ; sinon, Ruby lèvera une exception d'appel de méthode non définie.
Syntaxe
Ainsi, vous pouvez définir une méthode simple comme suit :
Vous pouvez définir une méthode qui accepte des paramètres comme suit :
Vous pouvez définir des valeurs par défaut pour les paramètres, qui seront utilisées si les paramètres requis ne sont pas passés lorsque la méthode est appelée :
Lorsque vous souhaitez appeler une méthode, il vous suffit d'utiliser le nom de la méthode, comme suit :
Cependant, lorsque vous appelez une méthode avec des paramètres, vous devez inclure les paramètres lorsque vous écrivez le nom de la méthode, par exemple :
Le plus grand inconvénient de l'utilisation de méthodes avec paramètres est que vous devez vous souvenir du nombre de paramètres lors de l'appel de la méthode. Par exemple, si vous passez seulement deux arguments à une méthode qui accepte trois paramètres, Ruby affichera une erreur.
Exemple
Essayez-le »
La sortie de l'exemple ci-dessus est :
编程语言为 C 编程语言为 C++ 编程语言为 Ruby 编程语言为 Perl
Retour de valeurs à partir des méthodes
Chaque méthode en Ruby renvoie une valeur par défaut. La valeur renvoyée est la valeur de la dernière instruction. Par exemple :
Exemple
Lorsque cette méthode est appelée, la dernière variable déclarée k sera renvoyée.
Ruby returnInstruction
En Ruby, l'instructionreturnest utilisée pour renvoyer une ou plusieurs valeurs depuis une méthode Ruby.
Syntaxe
Si plus de deux expressions sont données, un tableau contenant ces valeurs sera la valeur de retour. Si aucune expression n'est donnée, nil sera la valeur de retour.
Exemple
Regardez l'exemple suivant :
Exemple
Essayez-le »
La sortie de l'exemple ci-dessus est :
100 200 300
Nombre variable de paramètres
Supposons que vous déclariez une méthode avec deux paramètres. Lorsque vous appelez cette méthode, vous devez également passer deux arguments.
Cependant, Ruby vous permet de déclarer des méthodes avec un nombre variable de paramètres. Regardons l'exemple suivant :
Exemple
Essayez-le »
Dans ce code, vous avez déclaré une méthode sample qui accepte un paramètre test. Cependant, ce paramètre est un paramètre variable. Cela signifie que le paramètre peut prendre un nombre variable de variables. La sortie de l'exemple ci-dessus est :
参数个数为 3 参数值为 Zara 参数值为 6 参数值为 F 参数个数为 4 参数值为 Mac 参数值为 36 参数值为 M 参数值为 MCA
Méthodes de classe
Lorsqu'une méthode est définie en dehors d'une classe, elle est marquée comme private par défaut.privateEn revanche, si une méthode est définie à l'intérieur d'une classe, elle est marquée comme public par défaut.
La visibilité par défaut et le marqueurprivatepeuvent être modifiés via lepublicouprivate du module (Module)public ou private.
Lorsque vous voulez accéder aux méthodes d'une classe, vous devez d'abord instancier la classe. Ensuite, en utilisant l'objet, vous pouvez accéder à n'importe quel membre de la classe.
Ruby fournit un moyen d'accéder aux méthodes sans instancier. Voyons comment déclarer et accéder aux méthodes de classe :
Nous savons déjà comment la méthode return_date est déclarée. Elle est déclarée en plaçant un point après le nom de la classe, suivi du nom de la méthode. Vous pouvez accéder directement aux méthodes de classe, comme suit :
Pour accéder à cette méthode, vous n'avez pas besoin de créer un objet de la classe Accounts.
Ruby aliasInstruction
Cette instruction est utilisée pour créer un alias d'une méthode ou d'une variable globale. Les alias ne peuvent pas être définis à l'intérieur du corps d'une méthode. Même si la méthode est redéfinie, l'alias de la méthode préserve la définition actuelle de la méthode.
Créer un alias de variables globales numérotées ($1, $2,...) est interdit. Redéfinir les variables globales intégrées peut causer de graves problèmes.
Syntaxe
Exemple
Ici, nous avons défini l'alias foo pour bar, et l'alias $MATCH pour $&.
Ruby undefInstruction
Cette instruction est utilisée pour supprimer la définition d'une méthode.undefElle ne peut pas apparaître à l'intérieur du corps d'une méthode.
En utilisantundefetalias, l'interface de la classe peut être modifiée indépendamment de la classe parente, mais veuillez noter que cela peut casser le programme lors de l'appel de méthodes à l'intérieur d'elle-même.
Exemple
L'exemple suivant supprime la définition de méthode nomméebar: