Skip to content
Snippets Groups Projects
Commit 321ddd25 authored by Veritorakka's avatar Veritorakka
Browse files

Tehtävä 4

parent fc191df2
No related branches found
No related tags found
No related merge requests found
Yleisurheilukilpailujen suoritusten kirjaamiseen suunniteltava ohjelma voidaan mallintaa luokkakokonaisuudeksi, joka sisältää seuraavat luokat:
Urheilija: Tämä luokka sisältää urheilijan tiedot, kuten nimi, syntymäaika, kansallisuus jne.
Laji: Tämä luokka sisältää lajin tiedot, kuten nimi, kuvaus ja säännöt. Se myös määrittää, mitä ominaisuuksia kukin lajityyppi edellyttää (esim. suoritusajan tai hypätyn pituuden mittaaminen).
Kilpailu: Tämä luokka kokoaa yhteen useita lajeja ja niissä kilpailevat urheilijat. Kilpailu sisältää kilpailun tiedot, kuten päivämäärä, paikka ja kilpailun nimi.
Osallistuminen: Tämä luokka sisältää tiedot siitä, että urheilija osallistuu kilpailuun. Se sisältää myös urheilijan kilpailussa tekemät suoritukset, kuten suoritusajan, hypätyn pituuden tai heitetyn pituuden.
Pisteytys: Tämä luokka määrittää pisteiden laskemisen jokaisesta lajista ja kokonaispistemäärän laskemisen ottelulle. Se käyttää kukin lajityypin ominaisuuksia pisteiden laskemiseen.
Luokkahierarkia voisi näyttää suunnilleen tältä:
Urheilulaji
Juoksulaji
Pikajuoksu
Kestävyysjuoksu
Hyppylaji
Pituushyppy
Korkeushyppy
Heittolaji
Kuulantyöntö
Kiekonheitto
Kävely
Ottelu
Yleisurheiluottelu
Moniottelu
Jokaisella luokalla tulisi olla ainakin seuraavat tärkeimmät rutiinit:
Urheilulaji
String getNimi() - palauttaa urheilulajin nimen
Juoksulaji
int getMatka() - palauttaa juoksun matkan metreinä
Hyppylaji
boolean onkoPituushyppy() - palauttaa true, jos kyseessä on pituushyppy, false jos korkeushyppy
Heittolaji
double getMinimiPaino() - palauttaa minimipainon, jolla välineen tulee painaa
Kävely
int getMatka() - palauttaa kävelyn matkan metreinä
Ottelu
ArrayList<Urheilulaji> getLajit() - palauttaa ottelussa suoritettavat lajit
int[] getPisteet(Urheilija urheilija) - palauttaa urheilijan pisteet jokaisesta lajista
Lisäksi jokaisella luokalla voisi olla tarvittavat getterit ja setterit attribuuteilleen, kuten esimerkiksi Urheilija-luokan nimi ja suoritusajat eri lajeissa. Huomaa, että tässä on esitetty vain suuntaa antava hierarkia ja rutiineja, jotka voidaan muokata projektin vaatimusten ja tarkemman suunnittelun mukaisesti.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment