Olá pessoal, dúvida simples. Por gentileza, o console deu o mesmo resultado:
Eu achei que seria obrigatório o uso do "this". Por que funciona sem ele?
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!
Olá pessoal, dúvida simples. Por gentileza, o console deu o mesmo resultado:
Eu achei que seria obrigatório o uso do "this". Por que funciona sem ele?
Oii Ian! Tudo bem?
O this é um operador que nos ajuda a lidar com o escopo das variáveis. Vamos supor que tivéssemos um método com parâmetro nome, mas também temos um atributo chamado nome na nossa classe. Um exemplo disso são os setters e construtores, como em:
public vois setNome(String nome){
this.nome = nome;
}Repara que temos duas coisas iguais, então estamos dizendo para o compilador que o nome referente a esta classe está recebendo o valor do nome passado no parâmetro do método. Se tirássemos o this, ficaria assim:
public vois setNome(String nome){
this.nome = nome;
}Se nós mesmos podemos nos confundir, então imagina como o compilador lidaria com isso... hahaha Por isso usamos o this. Nesse caso que você exemplificou, não havia nenhum lugar em que pudesse haver alguma confusão com nomes e escopos, por isso não deu erro. Mas é melhor usar, pensando em boas práticas.
Espero ter ajudado! Abraços e bons estudos!
Olá Iasmin, bom dia! Muito obrigado pela explicação viu? Compreendi perfeitamente. :D