Latest web development tutorials

classes et objets Ruby

Ruby est un langage de programmation orienté objet parfait. caractéristiques du langage de programmation orienté objet comprennent:

  • l'encapsulation de données
  • données Abstraction
  • polymorphisme
  • hériter

Ces fonctionnalités seront Ruby orienté objet étaient en discussion.

Une programmation orientée objet, les classes et les objets impliqués. La classe est un modèle pour les objets individuels créés. En termes orientés objet, votre vélo est une instance de la moto de classe.

Dans le véhicule, par exemple, il comprend une roue (roues), HP (chevaux), d'huile ou de la capacité du réservoir de gaz (capacité de carburant ou d'un réservoir de gaz). Ces propriétés ont formé les membres de données du véhicule (Vehicle) classe. Avec ces attributs que vous pouvez distinguer un véhicule à partir d'un autre véhicule.

Les véhicules peuvent également contenir une fonction spécifique, comme une pause (arrêt), la conduite (conduite), la vitesse (vitesse). Ces fonctions formant les membres de données du véhicule (Vehicle) classe. Par conséquent, vous pouvez définir la classe comme une combinaison de propriétés et fonctions.

Classe de véhicule défini comme suit:

classe de véhicule
{
   no_of_wheels Nombre
   Nombre chevaux
   caractères type_of_tank
   Nombre Capacité
   Fonction vitesse
   {
   }
   Fonction de conduite
   {
   }
   Fonction arrêt
   {
   }
}

En donnant à ces membres de données assignées des valeurs différentes, vous pouvez créer différentes instances du véhicule de classe. Par exemple, un avion à trois roues, 1000 chevaux, la capacité du réservoir de carburant de 100 litres. De la même manière, une voiture à quatre roues, 200 chevaux, une capacité de réservoir de gaz de 25 litres.

Définir une classe en Ruby

Pour utiliser Ruby programmation orientée objet, vous aurez besoin d'apprendre comment créer des objets et des classes en Ruby.

En Ruby, la classe commence toujours avec laclassede mot -clé,suivi du nom de la classe. La première lettre du nom de la classe doit être en majuscule. classeclientcomme suit:

classe client
fin

Vous pouvez utiliser le mot cléendde mettre fin à une classe. Tous les éléments de données dela classese situent entre la définition de classe et les mots clésd'extrémité.

variables de classe Ruby

Ruby fournit quatre types de variables:

  • Lesvariables locales: Les variables locales sont des variables définies dans la méthode.Les variables locales en dehors de la méthode ne sont pas disponibles. Dans les chapitres suivants, vous verrez plus de détails sur la méthode. Les variables locales commencent par une lettre minuscule ou _.
  • Exemples de variables: les variables d'instance à travers toute instance ou objet des méthodes particulières.Cela signifie que les variables d'instance peuvent être modifiés d'un objet à. Placez un symbole variable d'instance (@) avant que le nom de la variable.
  • Lesvariables de classe: variables de classe à travers différents objets.Les variables de classe appartiennent à la classe, et est une propriété de la classe. Les variables de classe pour placer le symbole (@@) avant que le nom de la variable.
  • Lesvariables globales: les variables de classe ne peuvent pas étendre l' utilisation de la classe.Si vous voulez avoir une variable inter-classes, vous devez définir les variables globales. Les variables globales commencent toujours par un signe dollar (de $).

Exemples

Utilisez une variable de classe @@ no_of_customers, vous pouvez déterminer le nombre d'objets à créer, de sorte que vous pouvez déterminer le nombre de clients.

classe client
   @@ No_of_customers = 0
fin

Création d' objets à l' aide denouvellesméthodes de Ruby

Les objets sont des instances de classes. Vous allez maintenant apprendre à créer des objets de la classe en Ruby. En Ruby, vous pouvez utiliser la méthode de classe pour créer unnouvelobjet.

Nouvelleméthode est une approche unique, la bibliothèque prédéfinie dans Ruby. de nouvelles méthodes font partie des méthodesde classe.

L'exemple suivant crée deux objets cust1 classe Client et Cust2:

cust1 = client. nouveau
Cust2 = client. nouveau

Ici, cust1 et Cust2 est le nom de deux objets. Après le nom de l' objet suivi d'un signe égal (=) après le signe égal suivi du nom de la classe, puis l'opérateur point et le mot - clénouvelle.

Méthode personnalisée pour créer des objets Ruby

Vous pouvez passer des paramètres à lanouvelleméthode, ces paramètres peuvent être utilisés pour initialiser les variables de classe.

Si vous voulez unenouvelledéclaration de méthode avec des paramètres, vous devez créer une classe en même temps déclarer une méthodeinitialize.

initialiserméthode est un type spécial de méthode sera exécutée lorsque lanouvelleméthode est appelée avec une classe de paramètres.

L'exemple suivant crée la méthode initialize:

classe client
   @@ No_of_customers = 0
   initialiser def (id, nom, addr)
      @ Cust_id = id
      @ Cust_name = nom
      @ Cust_addr = addr
   fin
fin

Dans cet exemple, vous pouvez déclarer avecidentifiant, nom, addr comme les variables locales de la méthoded'initialisation.Ici,def et definpour définir la méthode Rubyinitialiser.Dans les chapitres suivants, vous apprendrez plus de détails sur la méthode.

Dans la méthoded'initialisation,les valeurs de ces variables locales à la variable d'instance @ cust_id, @ cust_name et @cust_addr. Ici, la valeur de la variable locale avec la nouvelle méthode de livraison.

Maintenant, vous pouvez créer un objet, comme suit:

cust1 = Customer.new ( "1", "John", "Sagesse Apartments, Ludhiya")
Cust2 = Customer.new ( "2", "Poul", "route Nouvel Empire, Khandala")

fonctions de membre de classe Ruby

En Ruby, les fonctions sont appelées méthodes. Chaque méthodede classeest basé sur le mot - clédef,suivi d'un nom de méthode.

Nom de la méthode est toujourslettre minuscule.En Ruby, vous pouvez utiliser le mot cléendpour mettre fin à une seule façon.

L'exemple suivant définit une méthode Ruby:

Exemple de classe
   fonction def
      déclaration 1
      déclaration 2
   fin
fin

Ici,la déclaration 1 et2 déclarationfait partie d'une méthodedelafonctionde l' échantillon de la classe dans le corps. Ces déclarations peuvent être toute déclaration Ruby valide. Par exemple, nous pouvons utiliser la méthodemetà la sortieBonjour Ruby,comme suit:

Exemple de classe
   def bonjour
      puts "Bonjour Ruby!"
   fin
fin

L'exemple suivant crée un objet de l' échantillon de classe et appelerbonjourméthode:

#! / Usr / bin / ruby

Exemple de classe
   def bonjour
      puts "Bonjour Ruby!"
   fin
fin

# Utilisez la classe ci-dessus pour créer un objet d'objet = Sample. New
object.hello

Ceci va produire les résultats suivants:

Bonjour Ruby!

Étude de cas simples

Si vous voulez faire plus d'exercices sur les classes et les objets, il y a une étude de cas:

Case classe Ruby