This is an old revision of the document!


Objektorienterad programmering

Om du vill läsa mer om objektorienterad programmering så finns det en tutorial här: Tutorial

  1. Du skall med hjälp av din kunskap av klasser göra en klass Fordon. Tänk noga igenom namngivning av klasser, metoder och attribut.
    • Klassen Fordon skall ha en metod getInfo() som returnerar information om objektet.
    • Klassen skall ha minst 3 attribut (vikt, topphastighet och registreringsId) som är protected.
    • Klassen Fordon skall ha en konstruktor som sätter minst registreringsId, gärna mer.
    • Man skall kunna hämta och ändra klassens attribut via publika metoder. OBS! två metoder per attribut.

  2. Du skall från klassen Fordon ärva minst 3 olika typer av fordon
    • Varje klass som ärvs skall ha minst ett eget attribut som man kan hämta och ändra via publika metoder.
    • Varje klass som ärvs av Fordon skall “override”:a metoden getInfo() och via den funktionen skall det tydligt framgå vilket typ av fordon det är.

I denna uppgift ska du göra klart två klasser som ska fungera tillsammans med den kod du får given. Klassen Die_ motsvarar en tärning och klassen Cup motsvarar en tärningskopp som kan innehålla ett antal tärningar. Se nedan för information om vad klasserna ska innehålla.
Filerna du behöver hittar du här.

Du skall skicka in två filer, die.php och cup.php. Till din hjälp har du filen index.php, den fil jag kommer att använda för att testa din kod. När alla kommentarer är borta ur denna fil och allt fungerar som det är tänkt så är du klar. Jag kommer att kolla att din kod är gjort på ett som jag tycker korrekt sätt. Att bara få allt att fungera räcker inte.

Klassen får bara innehålla ett attribut och tre metoder + en konstruktor. När en tärning skapas skall den få ett slumpat värde mellan 1 och 6.
Metoderna skall heta:

  • value, returnerar värdet på tärningen
  • roll, slår tärningen
  • print_die, OBS! Denna metod är redan gjord och får inte ändras.

Klassen skall hålla ordning på X antal tärningar (av klassen die) och får bara innehålla ett attribut och fem metoder + en konstruktor. När tärningskoppen skapas skall X tärningar skapas (X är ett argument till konstruktorn). Metoderna skall heta:

  • add_die, lägger till en tärning till koppen
  • sum, returnerar summan av alla tärningar i koppen
  • roll, slår om alla tärningar i koppen
  • remove_die, tar bort en tärning från koppen. Ska returnera false om koppen är tom, annars returneras true.
  • print_cup, skriver ut alla tärningar i koppen. Ska returnera false om koppen är tom, annars returneras true.