Oi, gente estou iniciando agora e não sei muito bem onde estou fazendo a confusão. Eu quero criar um método , porém o atributo que preciso pegar esta em outra classe , acontece que eu não estou sabendo chamar já tentei de várias formas :/
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Oi, gente estou iniciando agora e não sei muito bem onde estou fazendo a confusão. Eu quero criar um método , porém o atributo que preciso pegar esta em outra classe , acontece que eu não estou sabendo chamar já tentei de várias formas :/
Olá Rosana,
O this é usado pra acessar um atributo do próprio objeto. Pra acessar um atributo de outra classe, é preciso ter na mão uma referência pra esse objeto.
O código this.tipo na classe Pizza faz referencia ao atributo tipo, que é uma referêrncia para Cliente.
Partindo daí, minha primeira sugestão seria renomear o atributo para que fique mais fácil de entender o que ele representa. Por exemplo:
No lugar de:
public Cliente tipo;Poderia ser:
public Cliente cliente;Assim fica bem claro que o atributo é um cliente, beleza?
Aí o próximo passo é acertar o código do if, para que ele compile. Para acessar o atributo tipo do cliente, você pode chamar o tipo a partir do seu atributo cliente:
if (cliente.tipo == 1) {Assim, seu código deve compilar e ainda ficará mais claro o que cada atributo representa.
Éric show, muito obrigada , agora eu entendi melhor a lógica disso :)
Funcionooou :D