UU | IT | OOP med Java våren 2026 Uppgifter

 

Uppgift 1 - Akvarium


Denna obligatoriska uppgift består av att modifiera ett existerande javaprogram. Kopiera först det aktuella programmet Aquarium.java som ligger i zip-filen Aquarium.zip till din egen dator.

Alla ändringar ska göras i samma program—du behöver inte lämna in separata program för de olika deluppgifterna.

Du har väl läst den allmänna informationen om inlämningsuppgifter?

Deluppgift 1 — Fikapaus

Kompilera programmet med javac Aquarium.java och provkör det med java Aquarium. Beskriv med några få ord vad som händer.

Deluppgift 2 — Färgblindhet

Byt färg på fisken (till t.ex. gul) utan att ändra i konstruktorn Fish() där standardfärgen sätts. Däremot behöver du göra ett anrop till en metod som sätter färgen för en fisk. Vilket anrop och var i koden den skall utföras ska du lista ut själv. Beskriv med några få ord vilka ändringar du gjorde.

Deluppgift 3 — Fängslande

En "bounding box" är en rektangel som anger gränserna för fisken. Om du ändrar storleken på fönstret upptäcker du att området inom vilket rör sig är oförändrat. Metoden wasResized() anropas då fönsterstorleken ändras. Modifiera wasResized() så att "bounding boxen" ändras till dess rätta storlek. Titta på andra ställen i koden för att få en uppfattning vilken metod som avses och hur den ska användas. Beskriv vilka ändringar du gjorde.

Deluppgift 4 — Simma åt rätt håll

Du har säkert noterat att när fisken simmar åt vänster simmar den baklänges. Det finns en metod för att rita en fisk som simmar åt andra hållet. Modifiera metoden paint() så att rätt metod anropas beroende på omständigheterna. Använd den boolska variabeln right.

Deluppgift 5 — Dubbelt så många

Lägg in en extra fisk med annan färg, storlek och hastighet så att det finns totalt två fiskar som simmar runt i akvariet. Beskriv vilka ändringar du gjorde.

Deluppgift 6 — Storlek

I klassen Fish finns metoder för att ändra färg respektive "bounding box", men det finns ingen metod för att sätta fiskens storlek. Tillfoga en sådan metod och använd den sedan för att ändra storleken på en av fiskarna. Beskriv vilka ändringar du gjorde.