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

类和对象 Ruby

Ruby est un langage de programmation orienté objet parfait. Les caractéristiques des langages de programmation orientés objet incluent :

  • Encapsulation des données
  • Abstraction des données
  • Polymorphisme
  • Héritage

Ces caractéristiques seront Ruby orienté objet Cela est discuté.

Un programme orienté objet, impliquant des classes et des objets. Une classe est un plan pour créer des objets individuels. En termes d'orientation objet, votre vélo est un exemple de la classe vélo.

Prenez l'exemple d'un véhicule, il inclut des roues (wheels), une puissance (horsepower), et une capacité du réservoir de carburant ou de gaz (fuel or gas tank capacity). Ces propriétés constituent les membres de données de la classe Vehicle. Grâce à ces propriétés, vous pouvez distinguer un véhicule des autres véhicules.

Les véhicules peuvent également inclure des fonctions spécifiques, telles que l'arrêt (halting), la conduite (driving), et l'accélération (speeding). Ces fonctions constituent les membres de données de la classe Vehicle. Par conséquent, vous pouvez définir la classe comme une combinaison de propriétés et de fonctions.

La définition de la classe Vehicle est la suivante :

Exemple en ligne

Classe Vehicle
{
   Nombre nombre_de_roues
   Nombre chevaux-moteur
   Caractères type_of_tank
   Nombre Capacité
   Fonction d'accélération
   {
   }
   Fonction de conduite
   {
   }
   Fonction d'arrêt
   {
   }
}

En assignant différentes valeurs à ces membres de données, vous pouvez créer des exemples différents de la classe Vehicle. Par exemple, un avion a trois roues, une puissance 1,000, la capacité du réservoir de carburant est 100 litres. De la même manière, une voiture a quatre roues, une puissance 200, la capacité du réservoir de gaz est 25 Croissant.

Définir une classe en Ruby

Pour utiliser la programmation orientée objet avec Ruby, vous devez d'abord apprendre à créer des objets et des classes en Ruby.

Dans Ruby, la classe commence toujours par le mot-clé class Commence par, suivi du nom de la classe. La première lettre du nom de la classe doit être en majuscule. La classe Customer comme indiqué ci-dessous :

class Customer
fin

Vous pouvez utiliser le mot-clé fin Terminer une classe.classe Tous les membres de données sont entre la définition de la classe et fin Entre les mots-clés.

Variables dans la classe Ruby

Ruby offre quatre types de variables :

  • Variable locale :Les variables locales sont définies dans une méthode. Les variables locales ne sont pas accessibles en dehors de la méthode. Vous verrez plus de détails sur les méthodes dans les chapitres suivants. Les variables locales commencent par une lettre minuscule ou un underscore (_).
  • Variable d'exemple :Les variables d'exemple peuvent être utilisées entre n'importe quel exemple spécifique ou méthode d'objet. Cela signifie que les variables d'exemple peuvent changer d'objet à objet. Les variables d'exemple sont précédées du symbole (@) dans le nom de la variable.
  • Variable d'instance :Les variables d'instance peuvent être utilisées entre différents objets. Les variables d'instance appartiennent à la classe et sont une propriété de la classe. Les variables d'instance sont précédées du symbole (@@) dans le nom de la variable.
  • Variable globale :Les variables d'instance ne peuvent pas être utilisées entre les classes. Si vous souhaitez avoir une variable utilisable entre les classes, vous devez définir une variable globale. Les variables globales commencent toujours par le symbole dollar ($).

Exemple en ligne

使用类变量 @@no_of_customers,您可以判断被创建的对象数量,这样可以确定客户数量。

Exemple en ligne

class Customer
   @@no_of_customers=0
fin

En utilisant la variable de classe @@no_of_customers, vous pouvez juger du nombre d'objets créés, ce qui permet de déterminer le nombre de clients. new dans Ruby

méthode pour créer des objets new Un objet est un exemple de la classe. Maintenant, vous allez apprendre à créer des objets de classe en Ruby. En Ruby, vous pouvez utiliser les méthodes de la classe

à créer des objets. new méthodesclasseest une méthode unique, prédéfinie dans la bibliothèque Ruby. La méthode new appartient

méthode.1 Ici, cust2L'exemple suivant crée deux objets de la classe Customer cust

cust1 :
cust2 :

= Customer. new1 Ici, cust2 et cust new.

sont deux noms d'objets. Le nom de l'objet est suivi d'un signe égal (=), suivi du nom de la classe, puis du point d'opérateur et du mot-clé

des méthodes personnalisées pour créer des objets Ruby new Vous pouvez donner à la méthode

transmettre des paramètres, qui peuvent être utilisés pour initialiser les variables de classe. new Lorsque vous souhaitez déclarer une méthode avec des paramètres initialize.

initialize est un type spécial de méthode, qui est appelée lors de l'appel d'une classe avec des paramètres. new lors de l'exécution de la méthode.

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

Exemple en ligne

class Customer
   @@no_of_customers=0
   def initialize(id, name, addr)
      @cust_id=id
      @cust_name=name
      @cust_addr=addr
   fin
fin

Dans cet exemple, vous pouvez déclarer des variables avec id、name、addr en tant que variable locale initializeméthode. Icidef et fin utilisé pour définir une méthode Ruby initializeDans les chapitres suivants, vous apprendrez plus sur les détails des méthodes.

Dans initialize Dans la méthode, transmettez les valeurs des variables locales @cust_id、@cust_name et @cust_addr. Ici, les valeurs des variables locales sont transmises lors de l'appel de la méthode new.

Maintenant, vous pouvez créer des objets comme suit :

cust1=Customer.new("1", "John", "Wisdom Apartments, Ludhiya")
cust2=Customer.new("2", "Poul", "New Empire road, Khandala")

Les fonctions membres des classes Ruby

En Ruby, une fonction est appelée une méthode.classeDans chaque méthode de def suivi du nom de la méthode.

Le nom de la méthode commence toujours parles lettres minusculesau début. En Ruby, vous pouvez utiliser le mot-clé fin pour terminer une méthode.

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

class Sample
   def function
      déclaration 1
      déclaration 2
   fin
fin

ici,déclaration 1 et déclaration 2 est une méthode de la classe Sample function les composants principaux du sujet. Ces instructions peuvent être n'importe quelles instructions Ruby valides. Par exemple, nous pouvons utiliser la méthode puts pour afficher Bonjour Rubycomme suit :

class Sample
   def hello
      puts "Bonjour Ruby !"
   fin
fin

L'exemple suivant créera un objet de la classe Sample et appelle hello Méthode :

#!/usr/bin/ruby
class Sample
   def hello
      puts "Bonjour Ruby !"
   fin
fin
# Utiliser la classe ci-dessus pour créer un objet
object = Sample.new
object.hello

Cela produira le résultat suivant :

Bonjour Ruby !

Étude de cas simple

Si vous souhaitez faire plus d'exercices sur les classes et les objets, voici une étude de cas :

案例类 Ruby