Classes Internas (Java)
From Wiki**3
Classes internas em Java.
Princípios Básicos
- Classes internas e os vários aspectos de definição: classes internas simples; implementação de interfaces
- Ligação implícita entre objectos de classes internas e a instância da classe externa
- Partilha de acesso entre classe externa e interna
- Herança e classes internas e externas
Organização de código
- Sintaxe
- Organização de interfaces e classes e acesso ao código
- Classes internas locais (métodos e blocos)
- Classes anónimas
Exemplos
Gato & Estomago
Estes exemplos ilustram o problema de dotar instâncias da classe Gato com estômagos. Os pontos abaixo apresentam várias soluções possíveis. As soluções avançam na direcção da maior abstracção e implementação cada vez mais dedicada (neste caso, culminando numa classe interna ao método onde o estômago é utilizado).
- Gato & Estômago (classes interna e externa)
- Gato & Estômago (classe externa implementa interface)
- Gato & Estômago (classe interna implementa interface)
- Gato & Estômago (classe interna a um método)
- Gato & Estômago (classe interna a um bloco)
- Gato & Estômago (classe interna anónima)
Carro & Motor
Os exemplos seguintes apresentam algumas possibilidades de extensão (herança) de classes internas e externas.
- Carro & Motor (classes externas e internas)
- Carro & Motor (classe externa deriva de classe interna)
- Carro & Motor (overriding de classes internas) (problemas)