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?
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