Questão FC373326
Considere a classe abaixo, criada com Ruby, em um ambiente de programação em condições ideais. class Pessoa def initialize(nome) @nome = nome end def get_nome @nome end end Para in
Linguagens de Programação
FCC · 2018
Considere a classe abaixo, criada com Ruby, em um ambiente de programação em condições ideais.
class Pessoa
def initialize(nome)
@nome = nome
end
def get_nome
@nome
end
end
Para instanciar um objeto dessa classe armazenando no atributo nome o valor Paulo e para exibir o nome contido no atributo, utilizam-se as instruções
- p = new Pessoa("Paulo") whiteln p.get_nome
- p = Pessoa.new("Paulo") println p.get_nome
- Pessoa p = Pessoa->new("Paulo") puts p.get_nome
- Pessoa p = new Pessoa("Paulo") puts p.get_nome
- p = Pessoa.new("Paulo") puts p.get_nome
Mostrar resposta e comentário
Gabarito
Errado
Comentário do professor
A instrução p = Pessoa.new("Paulo") cria uma nova instância da classe Pessoa e atribui a referência à variável p. O método initialize é o construtor: ao chamar Pessoa.new com o argumento "Paulo", o construtor recebe esse valor e atribui-o à variável de instância @nome.
Em seguida, puts p.get_nome chama o método get_nome no objeto referenciado por p. O método get_nome simplesmente retorna o conteúdo de @nome. O comando puts imprime esse valor no console, acrescentando uma quebra de linha.
Resumo prático: a primeira linha instancia o objeto passando o nome; a segunda recupera e exibe o atributo armazenado. Essa é a forma idiomática em Ruby para criar o objeto, acessar um atributo via método de leitura e imprimir o resultado.
Conteúdo do catálogo FC Concursos · Atualizado em