Latest web development tutorials

classi e oggetti di Ruby

Ruby è un linguaggio perfetto programmazione orientata agli oggetti. caratteristiche del linguaggio di programmazione orientata agli oggetti includono:

  • incapsulamento dei dati
  • dati Astrazione
  • polimorfismo
  • ereditare

Queste caratteristiche saranno orientati agli oggetti di Ruby erano in discussione.

Un programmazione orientata agli oggetti, classi e oggetti coinvolti. Class è un progetto per singoli oggetti creati. In termini object-oriented, la bicicletta è un'istanza della moto di classe.

Nel veicolo, per esempio, comprende una ruota (ruote), HP (CV), olio o capacità del serbatoio di gas (combustibile o serbatoio di capacità). Queste proprietà formano le componenti di dati del veicolo (veicolo) classe. Con questi attributi che è possibile distinguere un veicolo da un altro veicolo.

I veicoli possono anche contenere una funzione specifica, come ad esempio la pausa (arresto), la guida (guida), eccesso di velocità (eccesso di velocità). Queste funzioni formano i membri di dati del veicolo (Vehicle) di classe. Pertanto, è possibile definire la classe come una combinazione di proprietà e funzioni.

classe del veicolo definito come segue:

Class Vehicle
{
   no_of_wheels numero
   numero cavalli
   personaggi type_of_tank
   numero Capacità
   eccesso di velocità funzione
   {
   }
   funzione di guida
   {
   }
   arrestare la funzione
   {
   }
}

Dando questi dati membro assegnati valori diversi, è possibile creare diverse istanze della classe di veicolo. Ad esempio, un aereo con tre ruote, 1.000 cavalli, serbatoio da 100 litri. Allo stesso modo, una macchina con quattro ruote, 200 cavalli, una capacità serbatoio di 25 litri.

Definizione di una classe in Ruby

Per poter utilizzare Rubino programmazione orientata agli oggetti, è necessario imparare a creare oggetti e classi in Ruby.

In Ruby, classe inizia sempre con laclasseparolachiave,seguita dal nome della classe. La prima lettera del nome della classe deve essere in maiuscolo. classeCustomercome segue:

classe Customer
fine

È possibile utilizzare la parola chiavefinedi interrompere una classe. Tutti i membri di datidella classesono tra la definizione della classe e le parole chiavefinali.

variabili di classe di Ruby

Rubino offre quattro tipi di variabili:

  • Le variabili locali: Le variabili locali sono variabili definite nel metodo.Le variabili locali al di fuori del metodo non è disponibile. Nei capitoli successivi, si vedrà ulteriori dettagli sul metodo. Le variabili locali iniziano con una lettera minuscola o _.
  • Esempi di variabili: variabili di istanza attraverso qualsiasi caso particolare o oggetto metodi.Questo significa che le variabili di istanza possono essere modificati da un oggetto all'altro. Inserire un simbolo variabile di istanza (@) prima del nome della variabile.
  • variabili di classe: variabili di classe attraverso diversi oggetti.variabili di classe appartengono alla classe, ed è una proprietà della classe. variabili di classe per posizionare il simbolo (@@) prima del nome della variabile.
  • Variabili globali: variabili di classe non possono estendersi uso di classe.Se si vuole avere un variabili inter-classe, è necessario definire le variabili globali. Le variabili globali iniziano sempre con il simbolo del dollaro ($).

Esempi

Utilizzare una variabile di classe @@ no_of_customers, è possibile determinare il numero di oggetti da creare, in modo da poter determinare il numero di clienti.

classe Customer
   @@ No_of_customers = 0
fine

La creazione di oggetti utilizzandonuovimetodi in Ruby

Gli oggetti sono istanze di classi. A questo punto imparare a creare oggetti della classe in Ruby. In Ruby, è possibile utilizzare il metodo di classe per creare unnuovooggetto.

Nuovometodo è un approccio unico, la libreria predefinita in Ruby. nuovi metodi appartengono ai metodi diclasse.

L'esempio seguente crea due oggetti cust1 classe Customer e Cust2:

cust1 = cliente. new
Cust2 = cliente. new

Qui, cust1 e Cust2 è il nome di due oggetti. Dopo il nome dell'oggetto seguito da un segno di uguale (=) dopo il segno di uguale seguito dal nome della classe, quindi l'operatore punto e la parola chiavenuova.

metodo personalizzato per creare oggetti di Ruby

È possibile passare parametri alnuovometodo, questi parametri possono essere utilizzati per inizializzare le variabili di classe.

Quando si desideranuovadichiarazione di metodo con i parametri, è necessario creare una classe allo stesso tempo dichiarare un metododi inizializzazione.

inizializzaremetodo verrà eseguito un particolare tipo di metodo quando ilnuovometodo è chiamato con un parametro class.

L'esempio seguente crea metodo initialize:

classe Customer
   @@ No_of_customers = 0
   def inizializzare (id, nome, addr)
      @ Cust_id = id
      @ Cust_name = nome
      @ Cust_addr = addr
   fine
fine

In questo esempio, è possibile dichiarare conid, nome, addr come le variabili locali del metododi inizializzazione.Qui,DEF e lafinedi definire il metodo di Rubyinizializzazione.Nei prossimi capitoli, imparerete maggiori dettagli sul metodo.

Nel metododi inizializzazione,i valori di queste variabili locali al @ cust_id variabile di istanza, @ cust_name e @cust_addr. Qui, il valore della variabile locale con il nuovo metodo di consegna.

Ora, è possibile creare un oggetto, come segue:

cust1 = Customer.new ( "1", "John", "La saggezza Appartamenti, Ludhiya")
Cust2 = Customer.new ( "2", "Poul", "strada New Empire, Khandala")

funzioni membro della classe di Ruby

In Ruby, le funzioni vengono chiamate metodi. Ogni metodoclasseè basata sulla parola chiavedef,seguito da un nome di metodo.

Nome metodo è semprelettera minuscola.In Ruby, è possibile utilizzare la parola chiavefinedi porre fine a senso unico.

L'esempio seguente definisce un metodo di Ruby:

Esempio di classe
   funzione DEF
      dichiarazione 1
      dichiarazione 2
   fine
fine

Qui,dichiarazione 1 e2 dichiarazionefa parte di un metodo difunzione dellaclasse di esempio all'interno del corpo. Queste dichiarazioni possono essere qualsiasi dichiarazione di Ruby valida. Per esempio, si può usare il metodomettea uscitaCiao Ruby,come segue:

Esempio di classe
   DEF ciao
      mette "Ciao Rubino!"
   fine
fine

L'esempio seguente crea un oggetto della classe del campione e chiamareciaometodo:

#! / Usr / bin / ruby

Esempio di classe
   DEF ciao
      mette "Ciao Rubino!"
   fine
fine

# Utilizzare la classe di cui sopra per creare un oggetto oggetto = campione. Nuovo
object.hello

Ciò produrrà i seguenti risultati:

Ciao Rubino!

Semplice Case Study

Se si vuole fare più esercizi su classi e oggetti, vi è un caso di studio:

Caso Classe Rubino