classes Ruby e objetos
Ruby é uma linguagem de programação orientada a objeto perfeito. recursos de linguagem de programação orientada a objeto incluem:
- encapsulamento de dados
- Abstração de dados
- polimorfismo
- herdar
serão esses recursos orientada a objetos de Ruby estavam sob discussão.
Uma programação orientada a objeto, classes e objetos envolvidos. Classe é um modelo para objetos individuais criados. Em termos de orientação a objetos, a bicicleta é uma instância da moto classe.
No veículo, por exemplo, inclui uma roda (rodas), HP (cavalos), óleo ou capacidade do tanque de gás (combustível ou tanque de gás de capacidade). Estas propriedades formaram os membros de dados do veículo de classe (Vehicle). Com esses atributos que você pode distinguir um veículo de outro veículo.
Veículos também podem conter uma função específica, como a pausa (travar), condução (dirigir), excesso de velocidade (excesso de velocidade). Estas funções que formam os membros de dados do veículo de classe (Vehicle). Portanto, você pode definir a classe como uma combinação de propriedades e funções.
classe de veículos definidos como se segue:
Veículo classe { no_of_wheels número cv número personagens type_of_tank número Capacidade excesso de velocidade função { } driving função { } parada função { } }
Ao dar esses membros de dados diferentes valores atribuídos, você pode criar diferentes instâncias do Veículo classe. Por exemplo, um avião com três rodas, 1.000 cavalos de potência, capacidade do tanque de combustível de 100 litros. Da mesma forma, um carro com quatro rodas, 200 cavalos de potência, a capacidade do tanque de gás de 25 litros.
Definindo uma classe em Ruby
Para utilizar o Ruby programação orientada a objetos, você precisa aprender a criar objetos e classes em Ruby.
Em Ruby, classe começa sempre com aclassedepalavra-chave,seguido pelo nome da classe. A primeira letra do nome da classe devem ser capitalizados. classe declientesda seguinte forma:
classe Customer final
Você pode usar a palavra-chavefinalpara terminar uma classe. Todos os membros de dadosda classesão entre a definição de classe e as palavras-chavefinais.
variáveis de classe de Ruby
Rubi oferece quatro tipos de variáveis:
- As variáveis locais: variáveis locais são variáveis definidas no método.As variáveis locais fora do método não está disponível. Nos capítulos seguintes, você vai ver mais detalhes sobre o método. As variáveis locais começar com uma letra minúscula ou _.
- Exemplos de variáveis: variáveis de instância em qualquer instância ou objeto métodos particulares.Isto significa que as variáveis de instância pode ser alterada de um objeto a outro. Coloque um símbolo variável de instância (@) antes do nome da variável.
- variáveis de classe: variáveis de classe em diferentes objetos.variáveis de classe pertencem à classe, e é uma propriedade da classe. variáveis de classe para inserir o símbolo (@@) antes do nome da variável.
- As variáveis globais: variáveis de classe não podem abranger o uso de classe.Se você quer ter um variáveis inter-classe, é preciso definir variáveis globais. As variáveis globais sempre começam com um cifrão ($).
Exemplos
Use uma variável de classe @@ no_of_customers, você pode determinar o número de objetos a ser criado, para que você possa determinar o número de clientes.
classe Customer @@ = 0 No_of_customers final
Criação de objetos usandonovosmétodos em Ruby
Objetos são instâncias de classes. agora você vai aprender como criar objetos da classe em Ruby. Em Ruby, você pode usar o método de classe para criar umnovoobjeto.
Novométodo é uma abordagem única, a biblioteca predefinida no rubi. novos métodos pertencem aos métodos declasse.
O exemplo a seguir cria dois objetos cust1 Cliente classe e Cust2:
cust1 = new Cliente. Cust2 = new Cliente.
Aqui, cust1 e Cust2 é o nome de dois objetos. Após o nome do objeto seguido por um sinal de igual (=) após o sinal de igual seguido do nome da classe, em seguida, o operador ponto e a palavra-chavenova.
método personalizado para criar objetos Ruby
Você pode passar parâmetros para onovométodo, estes parâmetros podem ser usados para inicializar as variáveis de classe.
Quando você quernovadeclaração de método com parâmetros, você precisa criar uma classe, ao mesmo tempo declarar um métodoinitialize.
inicializarmétodo é um tipo especial de método vai ser executado quando onovométodo é chamado com uma classe de parâmetro.
O exemplo a seguir cria método de inicialização:
classe Customer @@ = 0 No_of_customers def inicializar (id, nome, endereço) @ Cust_id = id @ Cust_name = name @ Cust_addr = addr final final
Neste exemplo, você pode declarar comid, nome, endereço como o método deinicializarvariáveis locais.Aqui,def efimpara a definição de método de rubiinicializar.Nos próximos capítulos, você saberá mais detalhes sobre o método.
No método deinicialização,os valores dessas variáveis locais para a instância variável @ cust_id, @ cust_name e @cust_addr. Aqui, o valor da variável local com o novo método de administração.
Agora, você pode criar um objeto, como se segue:
cust1 = Customer.new ( "1", "John", "sabedoria Apartments, Ludhiya") Cust2 = Customer.new ( "2", "Poul", "Novo Império estrada, Khandala")
funções de membro da classe de Ruby
Em Ruby, funções são chamados métodos. Cadaclassemétodo baseia-se nadef,seguido por um nome de método.
nome do método é sempre letra minúscula.Em Ruby, você pode usar a palavra-chavede pontaa ponta de uma maneira.
O exemplo a seguir define um método Ruby:
classe Sample função def declaração 1 declaração 2 final final
Aqui,declaração 1 e2 declaraçãoé parte de um método defunção declasse de amostra dentro do corpo. Estas declarações podem ser qualquer instrução de Ruby válido. Por exemplo, podemos usar asputsmétodo para exportarOlá Ruby,como segue:
classe Sample def Olá coloca "Olá rubi!" final final
O exemplo a seguir cria um objeto da classe Sample e chamarOlámétodo:
#! / Usr / bin / ruby classe Sample def Olá coloca "Olá rubi!" final final # Use a classe acima para criar um objeto object = Amostra. Nova object.hello
Isto irá produzir os seguintes resultados:
Olá rubi!
Simples Estudo de Caso
Se você quer fazer mais exercícios sobre classes e objetos, há um estudo de caso: