Encapsulamento (getters/setters)
Aprenda a proteger campos usando acesso private e a fornecer getters e setters para um acesso controlado.
Encapsulamento (getters/setters) é uma aula grátis de Java Academy no CoddyKit. Esta é a aula 3 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Java Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Java Academy inclui 3 aulas no total.
Encapsulamento
Encapsulamento: manter os campos privados e controlar o acesso por meio de métodos. Isso oculta detalhes e protege o estado.
Por que ocultar os campos?
Ocultar os campos impede que outro código defina valores inválidos. Você decide quais alterações são permitidas.
Acessadores de leitura
Acessador de leitura: um método que retorna o valor de um campo privado.
Acessadores de escrita
Acessador de escrita: um método que define o valor de um campo privado. Você pode adicionar verificações internamente para bloquear entradas inválidas.
Benefícios
Benefícios: código mais seguro, depuração mais fácil e liberdade para alterar posteriormente os detalhes internos da classe sem quebrar o restante do código.
Demonstração: encapsulamento
Código: Dog tem campos privados. Os acessadores de leitura retornam valores; o acessador de escrita verifica a validade. Uma idade inválida é redefinida para 0.
public class Main {
// Class with private fields, getters, and setters
static class Dog {
private String name;
private int age;
Dog(String n, int a) {
name = n;
setAge(a); // use setter for validation
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void setAge(int a) {
if (a >= 0) {
age = a;
} else {
age = 0; // default if invalid
}
}
}
public static void main(String[] args) {
Dog d = new Dog("Buddy", 3);
System.out.println(d.getName() + " is " + d.getAge() + " years old.");
d.setAge(-5); // invalid, will reset to 0
System.out.println("After invalid set, age = " + d.getAge());
}
}
Verificação do encapsulamento
Verificação rápida: por que tornamos os campos privados e usamos acessadores de leitura e de escrita?
Revisão
Revisão: encapsulamento = campos privados + acessadores de leitura e de escrita. Isso oculta detalhes e mantém os objetos seguros.
Perguntas Frequentes
A aula “Encapsulamento (getters/setters)” é grátis?
Sim — o texto completo de “Encapsulamento (getters/setters)” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Java Academy, atualize para CoddyKit PRO. O curso de Java Academy inclui 3 aulas no total.
O que vou aprender em “Encapsulamento (getters/setters)”?
Aprenda a proteger campos usando acesso private e a fornecer getters e setters para um acesso controlado. Você pratica Java Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Java Academy?
Nenhuma experiência prévia é necessária. Java Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 3.
Quanto tempo leva a aula “Encapsulamento (getters/setters)”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Java Academy?
Sim. Cada aula de Java Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Classes e objetos
- Campos, métodos e construtores
- Encapsulamento (getters/setters)