Programação com Objectos

From Wiki**3

Revision as of 15:26, 11 November 2005 by Root (talk | contribs)

A definição oficial do conteúdo de cada aula pode ser encontrada na página dos sumários mantida pelo Fénix.

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

Exemplos

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

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

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

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

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

Exemplos