Aula 03 - Encapsulamento e Construtores 🔒
Nesta aula, vamos aprender como proteger nossos dados e como inicializar nossos objetos de forma correta.
😊 Encapsulamento
Encapsulamento é a técnica de esconder os detalhes internos de uma classe e fornecer uma interface segura para interagir com ela. É como um controle remoto: você sabe quais botões apertar, mas não precisa saber como o circuito interno funciona.
Modificadores de Acesso
public: Acesso total.private: Acesso restrito à própria classe.protected: Acesso às subclasses.
Getters e Setters
São métodos utilizados para ler (get) e modificar (set) atributos privados.
📊 Estrutura de Encapsulamento
graph LR
User[Usuário/Outra Classe] -- Getter/Setter --> Interface[Métodos Públicos]
Interface -- Acessa --> Data[Atributos Privados]
🧠 Construtores
Um Construtor é um método especial chamado no momento da criação do objeto. Ele serve para garantir que o objeto comece com valores válidos.
[!CAUTION] Se você não definir nenhum construtor, o Java criará um padrão (vazio). Mas se você criar um, o padrão deixará de existir.
public class Cliente {
private String nome;
// Construtor
public Cliente(String nome) {
this.nome = nome;
}
}
💻 Exemplo no Terminal
📝 Exercícios Progressivos
- Básico: Para que serve o modificador
private? - Básico: Qual a função de um método "Setter"?
- Intermediário: Por que não devemos deixar todos os atributos como
public? - Intermediário: O que é a palavra-chave
thisdentro de um construtor? - Desafio: Crie uma classe
Funcionariocom atributosalarioprivado. Crie um setter que só aceite valores positivos.
🚀 Mini-projeto: Implemente a classe ContaBancaria com encapsulamento total e um construtor que peça o nome do titular e o saldo inicial.