Programutvecklingsteknik
Övning 1
De första uppgifterna är förberedelse för labb 1.
Skriv ett litet program som skapar ett fönster på skärmen
(objekt av Frame). Lägg några små grafiska komponenter i fönstret.
Skapa en liten komponent som är en subklass till TextField
som kontrollerar checksiffran i ett inskrivet personnummer och fyller i
ett bindestreck om det inte redan finns i det inmatade.
När man skriver in något i fältet och trycker på Enter ska komponenten
själv göra kontrollerna och fylla i ev. bindestreck.
Rita UML-diagram för komponenten. Är det bäst att göra det
innan programkoden skrivs eller efter?
- Skriv ett fristående program (alltså med
main- metod)
som öppnar ett fönster (Frame ) och lägger in en personnummer-
komponent enligt föregående uppgift. Rita först UML-digram.
- Gör en ny utvidgad personnummerkomponent som har tre fält.
En rubrik/meddelande-ruta, ett inmatningsfält och en knapp som återställer,
dvs. skriver tillbaka den ursprungliga texten i rubrikrutan och blankställer
personnummerfältet. Rita naturligtvis UML-diagram även för denna!
- Rita UML klassdiagram för en byrå med två lådor för kläder.
Följande medlemmar ska vara egna klasser:
plaggen, lådorna, byrån. Definiera även några möjliga operationer för
klasserna/objekten.
Lösningar
Här är de program som skrevs på övningen:
Uppgift 1: Upg1Frame.java
Uppgift 2, Personnummerkomponenten: PnrKomponent.java
Uppgift 3, Fönster som visar Personnummerkomponenten:
PnrFrame.java
Lösningarna ovan använder swing för grafiken, lyssnarinterfacet
KeyListener och anonyma inre klasser.
Här följer lösningsförslag som använder awt för grafiken
ActionListener och saknar anonyma inre klasser.
Uppgift 2, Personnummerkomponenten: PnrComponent.java
Uppgift 3, Fönster som visar Personnummerkomponenten:
PnrFrame2.java
|