Boa tarde, Wander! Como vai?
Getters e setters são métodos que servem para obter ou atribuir valor a um atributo que está encapsulado dentro da sua classe.
Exemplo:
Suponha que vc tenha uma classe Funcionario e uma classe de teste, da seguinte forma:
public class Funcionario {
private String nome;
public String getNome() {
return this.nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
public class TestaFuncionario {
public static void main(String[] args) {
Funcionario f = new Funcionario();
f.nome = "Pedro"; //isso não irá compilar
f.setNome("Pedro"); //isso irá funcionar
System.out.println(f.getNome()); //irá apresentar Pedro na saída padrão
}
}
Veja nesse exemplo de código que sua propriedade nome está encapsulada dentro da classe Funcionario, uma vez que atribuímos o modificador de acesso private para ela. Portanto, uma vez que esse atributo é privado, eu não posso acessar ele diretamente fazendo f.nome = "Pedro";
como tentei fazer na classe TestaFuncionario.
Dessa forma, eu preciso de uma forma que me permita acessar o atributo nome e é aí que entram os getters e setters. Através do getNome() eu consigo acessar o valor do atributo nome e através do setNome(String nome) eu consigo atribuir um novo valor ao atributo nome.
Em outras palavras, para todo atributo que esteja encapsulado dentro de suas classes, vc precisará escrever um get e um set caso queira obter e alterar o valor de tal atributo, o que vai determinar ou não a necessidade de manipulação do seu atributo será a lógica do seu programa.
Conseguiu entender? Respondi suas perguntas?
Abraço!