Você está aqui: Ruby ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como acessar variáveis de instâncias para leitura em Ruby sem a necessidade de métodos acessores usando a função attr_readerQuantidade de visualizações: 7211 vezes |
|
Por padrão, variáveis de instância em Ruby só podem ser acessadas usando métodos acessores, ou seja, uma variável de instância @nome deve ser lida usando um método obter_nome. É possível dispensar o uso de métodos acessores empregando o método attr_reader nos nomes das variáveis que poderão ser acessadas, para leitura, é claro. Veja um exemplo:
# Definição da classe Cliente
class Cliente
attr_reader :nome, :idade
def initialize(nome, idade)
@nome = nome
@idade = idade
end
def obter_nome
@nome
end
def obter_idade
@idade
end
end
# Cria uma instância da classe Cliente e inicializa as
# variáveis de instância @nome e @idade
cliente = Cliente.new("Osmar J. Silva", 35)
# Acessa as variáveis de instância sem a necessidade de
# métodos acessórios
puts cliente.nome
puts cliente.idade
Sem o uso do método attr_reader, a linha: puts cliente.nome causaria o seguinte erro: teste.rb:25: undefined method `nome' for #<Cliente:0x27f540c @nome="Osmar J. S ilva", @idade=35> (NoMethodError) |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de Ruby |
Veja mais Dicas e truques de Ruby |
Dicas e truques de outras linguagens |
|
C# - Como adicionar ou subtrair meses de uma data em C# usando a função AddMonths() da classe DateTime VB.NET - Como comparar strings em VB.NET usando o método Equals() da classe String do .NET Framework |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




