Programação com Objectos
From Wiki**3
A definição oficial do conteúdo de cada aula pode ser encontrada na página dos sumários mantida pelo Fénix.
- Apresentação da disciplina
- Introdução
- Operadores, Expressões e Controlo de Fluxo
- Construção de Objectos
- Organização de Código
Herança e Composição
Material correspondente às Aulas 07 e 08.
Herança e composição
- Diferenças
- Quando usar cada uma das técnicas
- Discussão de aspectos relacionados com estes conceitos
Exemplos
Mecanismos do Java
- Chamadas a construtores
- Ordem de iniciação
- Controlo de utilização de atributos e métodos
- A palavra chave final
- Uso de private, protected e public: discussão de aspectos relativos ao uso destas palavras chave
- Funcionamento das referências this e super
Exemplos
- Apresentação e discussão de exemplo completo: classes
Evento
,RefeiçãoComSopa
,Almoço
,Jantar
,Sopa
eBolo
. - Referências this e super: exemplo prático no contexto da aplicação
Evento
.
Polimorfismo
Material correspondente à Aula 09.
Tipos
- Polimorfismo e tipos primitivos
- Polimorfismo e tipos compostos (classes).
- Herança e polimorfismo: upcasting e downcasting.
Organização de Código
- Definição de métodos: overloading vs. overriding
- Selecção do método a invocar: early binding e late binding
Exemplos
- Exemplo simples:
Animal
,MamÃfero
,Gato
- Exemplo com vector.
Polimorfismo e Classes Abstractas
Material correspondente à Aula 10.
Classes Abstractas
- Noção de classe abstracta
- Separação de interface e implementação
- Propriedades
- Polimorfismo e classes abstractas
- Discussão de aspectos problemáticos
Exemplos
- Editor gráfico sem classes abstractas
- Editor gráfico com classes abstractas
Interfaces
Material correspondente à Aula 11.
Interfaces
- Revisão dos conceitos subjacentes à s classes abstractas e suas propriedades
- PrincÃpios e propriedades
Interfaces em Java
Exemplos
- Exemplos simples em Java e C++ (classes virtuais puras)
- Exemplo completo em Java:
Cão
,Vigilante
,CãoDeGuarda
,CãoPastor
,Chihuahua
,Robot
,XP
,XP2003
Classes Internas
Material correspondente às Aulas 12 e 13.
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
- Exemplos de classes internas e externas:
Gato
eEstômago
- Exemplos de herança com classes internas e externas:
Carro
eMotor
Enumerações
Material correspondente à Aula 14.
Tipos Enumerados
- Tipos enumerados em Java
- Enumerados como classes de domÃnio finito
- Propriedades dos enumerados
- Constraste com a definição de enumerações noutras linguagens (C, C++)
Exemplos
- Exemplos: estações do ano, planetas
Excepções
Material correspondente à Aula 15.
Introdução à s Excepções
- Introdução à s excepções
- Uso do mecanismo de excepções no controlo da execução de programas
Excepções em Java
- Mecanismo de excepções em Java
- Excepções e erros
- Classes de suporte à s excepções:
Throwable
,Exception
,Error
- Tipos de excepções: checked exceptions (verificadas em tempo de compilação) e excepções durante a execução (
RuntimeException
).