Herança e Composição: Difference between revisions

From Wiki**3

Root (talk | contribs)
No edit summary
Root (talk | contribs)
No edit summary
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{NAVPO}}
{{TOCright}}
{{TOCright}}
Material correspondente às Aulas 07 e 08.
* Diferenças:
 
** Herança: '''is-a'''
==Herança e composição==
** Composição: '''has-a'''
 
* Diferenças
* Quando usar cada uma das técnicas
* Quando usar cada uma das técnicas
* Discussão de aspectos relacionados com estes conceitos: flexibilidade
* Discussão de aspectos relacionados com estes conceitos: flexibilidade
Line 13: Line 12:
* Ordem de iniciação
* Ordem de iniciação
* Controlo de utilização de atributos e métodos
* Controlo de utilização de atributos e métodos
* A palavra chave [[Palavras chave da linguagem Java#final|final]]
* Uso da palavra chave '''final''' na definição de classes
* Uso de [[Palavras chave da linguagem Java#private|private]], [[Palavras chave da linguagem Java#protected|protected]] e [[Palavras chave da linguagem Java#public|public]]: discussão de aspectos relativos ao uso destas palavras chave
* Uso de '''private''', '''protected''' e '''public''' -- discussão de aspectos relativos ao uso destas palavras chave
* Funcionamento das [[As referências this e super (Java)|referências this e super]]
* Funcionamento das referências '''this''' e '''super'''


==Exemplos==
== Exemplos ==
* [[Herança e Composição/Definição Simples de Superclasse e Subclasse|Definição Simples de Superclasse e Subclasse]]
* [[Herança e Composição/Modelação de Evento com Refeições com Sopa|Modelação de Evento com Refeições com Sopa]]
* [[Herança e Composição/Aplicação Simples com Animais (não específicos) e Gatos|Aplicação Simples com Animais (não específicos) e Gatos]]


* [[Definição Simples de Superclasse e Subclasse]]
== Exercícios ==
* [[Modelação de Evento com Refeições com Sopa]]
* [[Herança e Composição/Exercício 01: Porta AND Binária|Exercício 01: Porta AND Binária]]
* [[Herança e Composição/Exercício 02: Porta AND Ternária|Exercício 02: Porta AND Ternária]]
* [[Herança e Composição/Exercício 03: Energia|Exercício 03: Energia]]
* [[Herança e Composição/Exercício 04: Arabian Nights in Java|Exercício 04: Arabian Nights in Java]]
* [[Herança e Composição/Exercício 05: Animal, Cão, Gato|Exercício 05: Animal, Cão, Gato]]


[[category:OOP]]
[[category:Ensino]]
[[category:PO]]

Latest revision as of 12:00, 19 November 2015

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)
  • Diferenças:
    • Herança: is-a
    • Composição: has-a
  • Quando usar cada uma das técnicas
  • Discussão de aspectos relacionados com estes conceitos: flexibilidade

Mecanismos do Java

  • Chamadas a construtores
  • Ordem de iniciação
  • Controlo de utilização de atributos e métodos
  • Uso da palavra chave final na definição de classes
  • Uso de private, protected e public -- discussão de aspectos relativos ao uso destas palavras chave
  • Funcionamento das referências this e super

Exemplos

Exercícios