Latest web development tutorials

Caso Classe Rubi

A seguir irá criar uma classe de Ruby chamado Cliente, declara dois métodos:

  • display_details:Este método é usado para exibir informações detalhadas sobre os clientes.
  • total_no_of_customers:O método utilizado para criar o número total de clientes no visor do sistema.
#!/usr/bin/ruby

class Customer
   @@no_of_customers=0
   def initialize(id, name, addr)
      @cust_id=id
      @cust_name=name
      @cust_addr=addr
   end
   def display_details()
      puts "Customer id #@cust_id"
      puts "Customer name #@cust_name"
      puts "Customer address #@cust_addr"
    end
    def total_no_of_customers()
       @@no_of_customers += 1
       puts "Total number of customers: #@@no_of_customers"
    end
end

Métododisplay_detailsconsiste em três declaração puts, mostrando o ID do cliente, nome do cliente e endereço do cliente. Onde, coloca declaração:

puts "Customer id #@cust_id"

ID de cliente exibido texto e o valor variáveis ​​@cust_id em uma única linha.

Quando você deseja exibir variáveis ​​de texto e de instância valores em uma única linha, você precisa colocar o símbolo (#) na frente da declaração coloca o nome da variável. variáveis ​​de texto e instância com o símbolo (#) deve usar as aspas duplas.

O segundo método, total_no_of_customers, contém uma variável de classe @@ no_of_customers. Expressão @@ clientes no_of_ + = 1 no momento de cada chamada total_no_of_customers método, além das no_of_customers variáveis ​​1. Desta forma, você vai ter variáveis ​​de classe número total de clientes.

Agora criar dois clientes, como segue:

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

Aqui, criamos duas classes de objetos Cliente, cust1 e Cust2, e passar os parâmetros necessários novos métodos. Quando o método de inicialização é chamado, os atributos necessários do objeto é inicializado.

Depois que um objeto é criado, você precisa usar dois objetos para chamar os métodos da classe. Se você deseja chamar qualquer método ou dados membro, você pode escrever o código da seguinte forma:

cust1.display_details()
cust1.total_no_of_customers()

Após o nome do objecto é sempre seguido por um ponto, seguido pelo nome do método ou membro de dados. Vimos como objeto cust1 para chamar dois métodos. Use objeto Cust2, você também pode chamar os dois métodos, como segue:

cust2.display_details()
cust2.total_no_of_customers()

Salvar e executar o código

Agora, todo o código fonte em arquivo main.rb, como segue:

#!/usr/bin/ruby

class Customer
   @@no_of_customers=0
   def initialize(id, name, addr)
      @cust_id=id
      @cust_name=name
      @cust_addr=addr
   end
   def display_details()
      puts "Customer id #@cust_id"
      puts "Customer name #@cust_name"
      puts "Customer address #@cust_addr"
   end
   def total_no_of_customers()
      @@no_of_customers += 1
      puts "Total number of customers: #@@no_of_customers"
   end
end

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

# 调用方法
cust1.display_details()
cust1.total_no_of_customers()
cust2.display_details()
cust2.total_no_of_customers()

Em seguida, execute o programa da seguinte forma:

$ Rubi main.rb

Isto produz os seguintes resultados:

Customer id 1
Customer name John
Customer address Wisdom Apartments, Ludhiya
Total number of customers: 1
Customer id 2
Customer name Poul
Customer address New Empire road, Khandala
Total number of customers: 2