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

Exemplo de Classe Ruby

A seguir, será criada uma classe Ruby chamada Customer, declarando dois métodos:

  • display_details:Este método é usado para mostrar os detalhes do cliente.

  • total_no_of_customers:Este método é usado para mostrar o número total de clientes criados no sistema.

Exemplo online

#!/usr/bin/ruby
 
class Customer
   @@no_of_customers=0
   def initialize(id, name, addr)
      @cust_id=id
      @cust_name=name
      @cust_addr=addr
   fim
   def display_details()
      puts "ID do cliente @cust_id"
      puts "Nome do cliente @cust_name"
      puts "Endereço do cliente @cust_addr"
    fim
    def total_no_of_customers()
       @@no_of_customers += 1
       puts "Número total de clientes: #@@no_of_customers"
    fim
fim

display_details O método contém três comandos puts, que mostram o ID do cliente, o nome do cliente e o endereço do cliente. Dentro desses comandos puts:

puts "ID do cliente @cust_id"

Exibirá o texto "ID do cliente" e o valor da variável @cust_id em uma única linha.

Quando você quiser exibir o texto e o valor de uma variável de exemplo em uma única linha, coloque o símbolo (#) antes do nome da variável na declaração puts. O texto e a variável de exemplo com o símbolo (#) devem ser marcados com aspas duplas.

O segundo método, total_no_of_customers, contém a variável de classe @@no_of_customers. A expressão @@no_ clientes+=1 Em cada chamada do método total_no_of_customers, some a variável no_of_customers 1Dessa forma, você obterá o número total de clientes na variável de classe.

Agora, crie dois clientes, conforme mostrado a seguir:

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

Aqui, criamos dois objetos da classe Customer, cust1 e cust2e passar os parâmetros necessários para o método new. Quando o método initialize é chamado, as propriedades necessárias do objeto são inicializadas.

Quando o objeto é criado, você precisa usar dois objetos para chamar métodos da classe. Se você quiser chamar um método ou qualquer membro de dados, você pode escrever o código, conforme mostrado a seguir:

cust1.display_details()
cust1.total_no_of_customers()

O nome do objeto sempre é seguido de um ponto, seguido do nome do método ou membro de dados. Já vimos como usar cust1 Objeto chama dois métodos. Usando cust2 Objeto, você também pode chamar dois métodos, conforme mostrado a seguir:

cust2.display_details()
cust2.total_no_of_customers()

Salve e execute o código

Agora, coloque todo o código-fonte no arquivo main.rb, conforme mostrado a seguir:

Exemplo online

#!/usr/bin/ruby
 
class Customer
   @@no_of_customers=0
   def initialize(id, name, addr)
      @cust_id=id
      @cust_name=name
      @cust_addr=addr
   fim
   def display_details()
      puts "ID do cliente @cust_id"
      puts "Nome do cliente @cust_name"
      puts "Endereço do cliente @cust_addr"
   fim
   def total_no_of_customers()
      @@no_of_customers += 1
      puts "Número total de clientes: #@@no_of_customers"
   fim
fim
 
Criar objeto
cust1=Customer.new("1"John", "Wisdom Apartments, Ludhiya"
cust2=Customer.new("2", "Poul", "New Empire road, Khandala")
 
# Chamar método
cust1.display_details()
cust1.total_no_of_customers()
cust2.display_details()
cust2.total_no_of_customers()

Em seguida, execute o programa, conforme mostrado:

$ ruby main.rb

Isso produzirá o seguinte resultado:

ID do Cliente 1
Nome do Cliente John
Endereço do Cliente Wisdom Apartments, Ludhiya
Número Total de Clientes: 1
ID do Cliente 2
Nome do Cliente Poul
Endereço do Cliente New Empire road, Khandala
Número Total de Clientes: 2