© 1999-2003, Flemming Koch Jensen
Alle rettigheder forbeholdt
Prototype Pattern

Vejledning løsninger
Opgaver

 

 

1

I denne opgave skal du implementere en simpelt anvendelse af Prototype Pattern. Bemærk at du ikke skal anvende Java's understøttelse af Prototype Pattern, men selv lave implementationen fra bunden.

  Klassediagrammet er som følger:
Figur 1:
Klasse-diagrammet
Husk at clone-metoden skal skrives med stort: Clone, for at undgå problemer med Java's egen understøttelse af Prototype Pattern.
ProtoInt skal indeholde en integer, og have en set- og en copy-konstruktor.
ProtoString skal indeholde en tekststreng, og ligeledes have en set- og en copy-konstruktor.
Klienten skal implementeres som en selvstændig klasse - dvs. ikke som en del af main i en testanvendelse. klienten skal have en datakerne, der består af en reference til en Prototype, samt en dertil hørende set-konstruktor. Endvidere skal klienten have en metode operation, der laver to kloner af det objekt som klienten har fat i, og laver en testudskrift af de tre objekter med toString. Bemærk: Klienten må ikke have noget kendskab til de to subklasse ProtoInt og ProtoString.
Lav en testanvendelse, der instantierer to klienter. En, der har en instans af ProtoInt og en anden, som har en ProtoString. Kald metoden operation på de to klienter.
 
2 [Forudsætning: At man har løst den foregående opgave]
Lav refactoring af den foregående opgave, så den anvender Java's understøttelse af Prototype Pattern.