DD1310/DD1314/DA3009 Programmeringsteknik 2012

Laboration 5

Läs i kap 8 om inkapsling ("Object Encapsulation") samt i kap 9 fram till avsnittet om arv ("Inheritance"):
Privata attribut, åtkomstmetoder, ändringsmetoder, objekt i en lista.

Labben redovisas på veckans övning. Det Pythonprogram du skriver kan ge 0-2 bonuspoäng (beroende på hur väl det uppfyller kraven).
Instuderingsfrågorna redovisas med ett prov, som också kan ge max 2 bonuspoäng.

Program

  1. Hitta på en ny klass (eller modifiera din klass från labb 4)
  2. Skapa flera objekt
  3. Lägg upp ditt färdiga program i Wuala

Testning

Glöm inte att testa att ditt program fungerar som det ska.
Tips: Ett enkelt sätt att spara testdata är att köra programmet och kopiera allt som syns på skärmen.

Krav

Krav för programmen i labb 5:

Instuderingsfrågor

  1. Kan man komma åt ett privat attribut inuti klassen?
  2. Vad är en åtkomstmetod ("get method")?
  3. Vad är en ändringsmetod ("set method")?
  4. Rita ett objekt (med exempeldata) som är en instans av din klass.
  5. Varför är det praktiskt att lagra flera objekt i en lista?
  6. Rita din lista med objekt.
  7. Kan man skicka ett objekt som parameter till en funktion eller metod?
  8. Kan man definiera flera klasser i samma program?
  9. När ska man definiera metoden __lt__?
  10. Hur skriver man när man vill att en klass ärver från en annan?
  11. Ge ett exempel på polymorfism.
  12. Hur gör man en egen modul?

Efter labben

Hur tycker du att ditt eget arbete med labben fungerade? Borde du ha gjort något annorlunda? Fundera en stund, och skriv upp några tips till dig själv inför arbetet med P-uppgiften!