RHS   Allan   C#.NET Øvelser TouristicRental03


 

TouristicRental03

Klassen Bicycle
Hastværk er lastværk! Vi glemte en attribut som kan fortælle om den pågældende cykel er udlejet eller ej.
Tilføj en variabel, isRented (default-værdi bør være false) med tilhørende property: IsRented (både get og set).

Klassen Rental
For at kunne registrere en udlejning har vi yderligere brug for en klasse: Rental.
Klassen skal have følgende attributter:

Klassen Shop
Endelig skal vi have en klasse som kan binde det hele sammen: Shop.

Shop skal indeholde Main() som blot skal udføre følgende:

Init() skal fylde en Collection op med de cykler vi ejer - vi vælger her en ArrayList, kaldet bicycles.
I den endelige version vil vi læse fra en database, men her fylder vi Init() med en masse statements der danner objekter af de to forskellige slags cykler og tilføjer (add()) hvert objekt til bicycles.

Open() vil i den endelige version være udstyret med en smart GUI hvorfra man kan udføre alskens operationer.
Vi kan ikke GUI endnu og vi gider ikke tekst-orienteret så vi "snyder" lidt igen og opretter et par Rental objekter (husk at opdatere cyklens IsRented property).
Vi får brug for en Collection mere til at holde på vores Rental-objekter - igen vælger vi en ArrayList.

For at simulere lidt dynamik skal mindst et par af dagens Rental objekter.
Det er her du skal beregne (og udskrive) lejen som skal betales for cyklen. Find et tilfældigt tal som repræsenterer længden af lejeperioden i timer til brug for metoden getAmount().

Før lukketid skal vi gøre status for dagen så du skal tilføje statements som udskriver indholdet af de to ArrayList's.

Når dagen er omme skal butikken lukkes - så det sidste Open() skal udføre er et kald af metoden Close().

I Close() ville vi gemme dagens registreringer (hvis det da ikke var gjort løbende). Her udskriver vi blot "Tak for idag" - senere fylder vi lidt mere funktionalitet i metoden.


Maintained by: Allan Helboe Nielsen
Updated: 3 November, 2005 1:04