Formato A5 • 2 páginas — Português
Classe: molde para criar objetos.
Objeto (Instância): entidade criada a partir da classe.
Atributo: estado do objeto.
Método: comportamento do objeto.
Construtor: inicializa o objeto ao criar (mesmo nome da classe).
| Termo | O que faz | Exemplo |
|---|---|---|
| Classe | Molde | public class Pessoa { ... } |
| Objeto | Instância | Pessoa p = new Pessoa(); |
| Atributo | Dados | private String nome; |
| Método | Comportamento | public void falar() { ... } |
O que é: Ocultar detalhes internos (atributos) e expor acesso controlado via métodos públicos.
Modificador: private (restringe o acesso à própria classe).
Getter (leitura)
Setter (escrita) — idealmente com validação
O que é: Reaproveitamento de código. Subclasse herda atributos e métodos da superclasse.
Relação: "É UM" (ex.: Cachorro é um Animal).
Palavra-chave: extends
Nota: Java permite herança simples de classes (sem herança múltipla de classes).
O que é: "Muitas formas" — capacidade de um objeto ser tratado como sua superclasse, mas executar comportamento da sua própria classe.
O que é: Focar no "o que" o objeto faz, escondendo o "como". Implementada via classes abstratas e interfaces.
Classe Abstrata
Interface
| Item | Classe Abstrata | Interface |
|---|---|---|
| Instanciação | Não pode ser instanciada | Não pode ser instanciada |
| Membros | Pode ter atributos e métodos com implementação | Métodos (geralmente abstratos) e constantes |
| Herança/Implementação | extends (1 classe) | implements (várias interfaces) |
Sobrecarga (Overload): Mesma classe, mesmo nome, parâmetros diferentes.
Sobrescrita (Override): Subclasse redefine método da superclasse com a mesma assinatura. Use @Override.
| Palavra | Função | Exemplo |
|---|---|---|
| new | Instancia | Pessoa p = new Pessoa(); |
| this | Referência à instância atual | this.nome = nome; |
| super | Acesso à superclasse | super(); super.metodo(); |
| static | Membro da classe (compartilhado) | static int contador; |
| final | Constante / impede sobrescrita/herança | final int X = 10; |
| instanceof | Verifica tipo em tempo de execução | if (a instanceof Cachorro) { ... } |
| toString() | Representação textual do objeto | @Override public String toString() { ... } |
Herança ("É UM"): Cachorro é um Animal. Usa extends.
Associação ("TEM UM"): Uma classe usa outra como referência (ex.: Carro tem um Motor).
Agregação/Composição: Uma classe contém outra; composição implica dependência forte (ex.: Empresa tem List<Funcionario>).