PWJ LAB6

Tematyka:

Programowanie Obiektowe:
- Klasy
- Metody
- konstruktory
- słowo kluczowe this
- Dziedziczenie
- slowo kluczowe super
- polimorfizm
- getter i setter

Teoria:

Klasy i Metody
Konstruktory
this
Dziedziczenie
super
polimorfizm

Przykłady:
PierwszyProgramObiektowy Jest on napisany w eclipse. Zatem w innym IDE należy go „zaimportować”.

Zadania:

1. Wzbogać istniejący projekt o następujące modyfikacje:
- metody drukujInfo wzbogac o wypisywanie wszystkich pol z klas
- dodaj po dwie nowe metody do klasy rower. Pierwsza metoda w klasie rower powinna umożliwiać skręcanie kierownicą. W tym celu dodaj także pole przechowujące informacje o kącie skręcenia kierownicy. Dodaj także drugą metodę – wymyśl jej zakres działania. W razie potrzeb dodaj odpowiednie pola. W obu przypadkach pamiętaj o aktualizacji metody drukujInfo.
- dodaj nową klasę o nazwie RowerWieloosobowy. Zaproponuj przynajmniej jedno nowe pole i jedną nową metodę dla tej klasy. Klasa RowerWieloosbowy dziedziczy z klasy Rower. Utwórz po 2 obiekty nowej klasy w programie głównym (w klasie Droga).
- Wypisz parametry wszystkich obiektów w konsoli.

2. Zorganizuj wyścig rowerów / obiektów wykonanych w poprzednim programie. W tym celu ustaw wszystkim rowerom obiektom taka sama prędkość startową (poprzez zmodyfikowanie odpowiedniej wartości przy tworzeniu obiektu).
Następnie w pętli while losuj z zakresu <-4; +8> o jaką wartość zmieni się prędkość każdego roweru – w tym celu użyj metody dodajGazu na rzecz każdego z obiektów. Przyjmij, że jeden obieg pętli while to symulacja przejazdu w ciągu 10 minut, a prędkość startowa oraz losowana jest wyrażona w kilometrach na godzinę. Zakładamy, że każdy uczestnik wyścigu rusza z identyczną prędkością którą rozwija w 0 sekund.
Wyścig kończy się w momencie, kiedy pierwszy rower/obiekt przejedzie 100 kilometrów.
W oknie konsoli w trakcie wyścigu wypisuj informacje takie jak:
minuta wyścigu oraz prędkość i dystans dla każdego roweru / obiektu.
np.
30 minuta wyscigu
skladak1 z predkoscia 20 km/h pokonal dystans 10 kilometrow
goral1 z predkoscia 40 km/h pokonal dystans 22 kilometrow.

Po zakończonym wyścigu wypisz, który rower/obiekt wygrał, w tym celu wypisz jego etykietę w oknie konsoli.