Classes Internas (Java)

From Wiki**3

Revision as of 15:08, 1 October 2010 by Root (talk | contribs)

Programação com Objectos
Introduction
Creation and Destruction
Inheritance & Composition
Abstraction & Polymorphism
Code Organization
Java Topics
Inner Classes
Enumerations
Data Structures
Exceptions
Input/Output
RTTI
Other Topics
JUnit Tests
UML Topics
Design Patterns
"Simple" Factory
Composite & Visitor
Command
Strategy & State
Template Method
Observer
Abstract Factory
Decorator & Adapter
Façade (aka Facade)

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).

Carro & Motor

Os exemplos seguintes apresentam algumas possibilidades de extensão (herança) de classes internas e externas.

Exercícios