Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
prog2_03 [2019-09-13 14:02]
Daniel Viström
prog2_03 [2019-10-25 12:44]
Daniel Viström
Line 21: Line 21:
 Ta filerna Index.java, Cup.java, Die.java från din workspace på datorn. Packa ihop dessa till en zip-fil och skicka in. \\ Ta filerna Index.java, Cup.java, Die.java från din workspace på datorn. Packa ihop dessa till en zip-fil och skicka in. \\
  
-2.+2*. 
 +**Fish**\\ 
 +Skriv en klass //Fish// som beskriver en fisk.\\ 
 +Klassen ska ha: 
 +  * attributen //sort//, //length// (i cm) och //weight// (i g). 
 +  * en //konstruktor// som har tre parametrar som tar in startvärden till de tre attributen. 
 +  * 3 //get-metoder// som returnerar "värden" för varsitt attribut. Inga set-metoder ska finnas. 
 +  * en metod som returnerar //priset// på fisken (i hela kronor) utifrån dess vikt (120 kr/kg oavsett fisksort). 
 +  * en metod som returnerar //fraktkostnaden// för fisken. Längden (i cm) multipliceras med faktorn 0,15 och vikten (i g) med faktorn 0,013. Därefter adderas värdena. Fraktkostnaden blir dock minst 12 kr. 
 +  
 +Gör en klass //FishTest// som testar klassen Fish.\\ 
 +Klassen ska ha en //mainmetod// som gör följande: 
 +  * Skapar en lista av typen //ArrayList<Fish>//
 +  * Läser in fiskar från en //textfil// där varje rad innehåller data för en fisk. För varje rad som läses ska ett nytt fiskobjekt skapas och läggas in i listan med fiskar. 
 +  Ex:  
 +  Torsk 37 865 
 +  Gös 26 634 
 +  osv. 
 + 
 +  * Går igenom listan och skriver ut en //tabell// med information om fiskarna. 
 +  Ex:  
 +  Sort    Längd (cm) Vikt (g) Pris (kr) Frakt (kr) 
 +  ---------------------------------------------- 
 +  Torsk     37         865      104        17 
 +  Gös       26         434       52        12 
 + 
 + 
 +3.
 **Arv** \\ **Arv** \\
 Klocka med alarm\\ Klocka med alarm\\
 {{::uppgift1.pdf|Uppgift1}} \\ {{::uppgift1.pdf|Uppgift1}} \\
 +<php>
 +/*
 {{::testprogram.zip|Testprogram}} {{::testprogram.zip|Testprogram}}
  
-3.+*/ 
 +</php> 
 + 
 +4.
 **Interface** \\ **Interface** \\
 Skapa ett nytt interface i eclipse och kopiera in nedanstående kod. \\ Skapa ett nytt interface i eclipse och kopiera in nedanstående kod. \\
 Skapa en klass **MyQueue** som implementerar interfacet **IntQueue** där kön byggs upp av en array med heltal (int[ ]).\\ Skapa en klass **MyQueue** som implementerar interfacet **IntQueue** där kön byggs upp av en array med heltal (int[ ]).\\
 Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\ Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\
-Testa din klass med ett testprogram.+Testa din klass med ett testprogram. \\ 
 +I testklassen ska referenser till de köer som skapas vara av interfacets typ.
  
 <code java> <code java>
Line 53: Line 86:
 </code> </code>
  
-4.+5.
 **Interface** \\ **Interface** \\
 Skapa ett nytt interface **IntStack** i eclipse. Fundera över vilka abstrakta metoder som ska vara med i interfacet.\\ Skapa ett nytt interface **IntStack** i eclipse. Fundera över vilka abstrakta metoder som ska vara med i interfacet.\\
 Skapa en klass **MyStack** som implementerar interfacet **IntStack** där stacken byggs upp av en array med heltal (int[ ]).\\ Skapa en klass **MyStack** som implementerar interfacet **IntStack** där stacken byggs upp av en array med heltal (int[ ]).\\
 Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\ Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\
-Testa din klass med ett testprogram.+Testa din klass med ett testprogram. \\ 
 +I testklassen ska referenser till de stackar som skapas vara av interfacets typ.
  
-*5.+*6.
 **Arv, abstrakta klasser** \\ **Arv, abstrakta klasser** \\
 Robotar i labyrinter. \\ Robotar i labyrinter. \\
 {{: :uppgift2.pdf|Uppgift2}} {{: :uppgift2.pdf|Uppgift2}}