Me relembre porfavor: o que é shadowing?
Me relembre porfavor: o que é shadowing?
Oi Manoel, shadowing é quando uma variável local de um método acaba sombreando um atributo. Exemplo:
public class Pessoa {
    private String nome;
    public String setNome(String nome) {
    }
}qualquer referencia à variável nome dentro do método setNome(), será o mais próximo, que neste caso é o parâmetro. O seguinte código por exemplo, não altera o atributo:
public String setNome(String nome) {
    // escondendo o atributo, por conta do parametro
    nome = nome;    
}Para realmente mudar o valor do atributo, você tem que usar o this, que é o que irá diferenciar o atributo do parâmetro do método:
public String setNome(String nome) {
    this.nome = nome;    
}Faz sentido? Abraço!