Imagem de fundo

Analise o trecho de código abaixo escrito na linguagem Ruby...

Analise o trecho de código abaixo escrito na linguagem Ruby (versão 1.9).


class Carro

_________def nome= (novo_nome)

__________________@nome = novo_nome

_________end


_________def nome

__________________return @nome

_________end

end




c = Carro.new

c.nome = "Jose"

puts ______________________________________________________c.nome


Com base nesse código, está correto afirmar que:


A

c.nome = “Jose” faz chamada ao método nome=();


B

puts c.nome faz acesso direto ao atributo de classe @nome, não fazendo chamada ao método nome;


C

devido a atribuição c.nome = “Jose” fazer chamada ao método nome= e utilizar espaços entre nome e o símbolo de igual, um erro ocorrerá;


D

a chamada ao construtor obrigatoriamente deve fazer uso de parênteses, portanto, c = Carro.new irá gerar um erro;


E

o atributo @nome não foi previamente definido, portanto, um erro ocorrerá durante a execução do código.