|
|
(10 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| == Tópicos ==
| | #REDIRECT [[ist:Programação com Objectos/Aula Prática 13]] |
| | |
| * Diagramas de sequência UML
| |
| | |
| == Exercício 1 ==
| |
| | |
| Desenhe o diagrama de sequência UML correspondente à execução do programa abaixo, incluindo as etapas de criação dos objectos. O diagrama de sequência deve conter os nomes das mensagens trocadas (não é necessário representar os argumentos dessas mensagens nem as correspondentes ao retorno).
| |
| | |
| <java5>
| |
| import java.util.ArrayList;
| |
| abstract class Printable {
| |
| public abstract String show();
| |
| public void add(Printable p) { throw new UnsupportedOperationException(); }
| |
| }
| |
| class Paragraph extends Printable {
| |
| public String show() { return "[paragraph]"; }
| |
| }
| |
| class Image extends Printable {
| |
| public String show() { return "[image]"; }
| |
| }
| |
| class Album extends Printable {
| |
| public ArrayList<Printable> _printables = new ArrayList<Printable>();
| |
| public void add(Printable p) { _printables.add(p); }
| |
| public String show() {
| |
| String s = "[";
| |
| for (Printable p: _printables) s += p.show();
| |
| s += "]";
| |
| return s;
| |
| }
| |
| }
| |
| class Page extends Album {}
| |
| class Book extends Album {}
| |
| public class App {
| |
| public static void main(String args[]) {
| |
| Page page1 = new Page();
| |
| page1.add(new Paragraph());
| |
| page1.add(new Image());
| |
| Page page2 = new Page();
| |
| page2.add(new Paragraph());
| |
| page2.add(new Image());
| |
| Book book = new Book();
| |
| book.add(page1);
| |
| book.add(page2);
| |
| System.out.println(book.show());
| |
| }
| |
| }
| |
| </java5>
| |
| | |
| [[Programação_com_Objectos/Teste_de_2009/01/24#2.7. Diagrama de sequência (UML)|resolução]] - procurar resolver antes de consultar
| |
| | |
| == Exercício 2 ==
| |
| | |
| == Exercício 3 ==
| |
| | |
| == Resoluções ==
| |
| | |
| [[category:Ensino]]
| |
| [[category:PO]]
| |
| [[category:Aulas Práticas de PO]]
| |