RHS
Allan
C#.NET Øvelser TouristicRental01
|
TouristicRental01
En lille virksomhed udlejer div. ting med turister som målgruppe.
I første
omgang udlejes kun cykler, men det er meningen at på længere
sigt skal andre produkter med i sortimentet (f.eks. barnevogne, tøj, rulleskøjter osv.).
I denne øvelse skal vi kun beskæftige os med registrering af cykler, men
skal huske på at denne del af systemet skal kunne arbejde sammen med andre
dele (f.eks. betaling).
To slags cykler lejes ud, CityBikes og SportsBikes.
Den væsentligste forskel
er at CityBikes altid kun har ét gear mens SportsBikes kan have flere
gear.
Endvidere kan en CityBike evt. være udstyret med et
baby-sæde.
Nedenfor beskrives den struktur vi indtil videre ønsker at implementere
dels ved et diagram og dels ved tekst:
| |
 |
|
|
| |
Bicycle
Alle cykler har et serienummer til identifikation samt en basis-rate
til beregning af lejen.
Der ønskes 3 constructors: en uden parametre, en med serienummer
som parameter og en med såvel serienummer og basis-rate som parametre.
Property SerialNo skal kun være get, property BasicRate skal være både get og set.
SportsBike
Antallet af gear indeholdes i en variabel - gears.
Property Gears skal kun være get.
Der ønskes 3 constructors: en uden parametre, en med antal gear og
serienummer samt en med antal gear, serienummer og basis-rate.
Det er et krav at basis-raten skal være mindst 5 for en SportsBike.
Hvis man forsøger at instantiere et objekt med lavere værdi eller
at ændre basis-raten til lavere værdi end 5 skal henh. property og
constructor ignorere den lave værdi og sørge for at mindstekravet overholdes.
CityBike
Hvorvidt der er installeret baby-sæde på en cykel afgøres
ved en boolsk værdi - babySeat
Property BabySeat skal være både set og get.
Der ønskes 4 constructors: 3 svarende til super-klassens (genbrug
så
meget som muligt) samt en der tager 3 parametre (serienummer, basis-rate
og information om baby-sæde).
|
|
|
Implementer de 3 klasser.
Implementer yderligere en TestKlasse som blot har en Main() metode.
I Main() skal du foreløbig blot instantiere 3
objekter (et af hver type) samt afteste deres metoder