Cvičení 8

Třídy

Domácí úlohy

  1. Vytvořte třídu OsobaVek přidáním atributu vek do třídy Osoba. Dopište příslušné getry a setry a upravte odpovídajícím způsobem metodu toString(). Dále modifikujte předchozí program tak, že vypíše informace o nejmladší osobě. Pro nalezení odpovídající osoby vytvořte metodu OsobaVek minVek(OsobaVek[] pole) a výpis informací proveďte s využitím metody toString(). Existuje-li ve vstupním souboru více osob s nejnižším věkem, program vypíše jen informace o první z nich.
    Upozornění: Validátor pracuje pouze s jedním souborem. Třídu OsobaVek proto uložte bez specifikátoru public do souboru s programem (v tomto souboru tedy budou dvě třídy) a tento výsledný soubor odesílejte na validátor.
    Pozor: Soubor osoby-data-dcv.txt nečtěte programově (pomocí třídy File), protože tato problematika ještě nebyla odpřednášena.
    Použijte známou konstrukci sc = new Scanner(System.in); a čtení ze souboru osoby-data-dcv.txt zajistěte pomocí přesměrování vstupu na příkazové řádce, např.: java Ppa1_cv08_1_A06999 < osoby-data-dcv.txt

    Vstup: pole s osobami ze souboru osoby-data-dcv.txt
    Výstup: informace o nejmladší osobě

    Spustitelná verze: Ppa1_cv08_1_A06999.class (současně si stáhněte i soubor OsobaVek.class) a její výstup.

  2. Vytvořte třídu Student (soubor Student.java), která bude mít privátní atributy osobniCislo a prumerZnamek. Napište konstruktor, potřebné getry, setry a metodu toString(). Dále napište metodu String vratLepsiPrumer(Student s), která ze dvou studentů vybere studenta s lepším průměrem známek a prostřednictvím metody toString() zajistí výpis jeho osobního čísla a průměru známek. Funkčnost třídy ověřte v aplikační třídě, ve které nejprve načtete pomocí statické metody Student nactiStudenta(Scanner sc) informace o dvou studentech, v pořadí osobní číslo a průměr známek, které budou pro každého studenta zadány na jednom řádku a navzájem odděleny mezerou. Následně vypište informaci o obou studentech (metodou toString()) v pořadí, ve kterém byli studenti zadáni a informaci o studentu s lepším průměrem známek využitím již vytvořené metody datové třídy.
    Upozornění: Validátor pracuje pouze s jedním souborem. Třídu Student proto uložte bez specifikátoru public do souboru s programem (v tomto souboru tedy budou dvě třídy) a tento výsledný soubor odesílejte na validátor.

    Vstup: osobní čísla a průměry známek dvou studentů
    Výstup: informace o obou studentech, student s lepším průměrem

    Spustitelná verze: Ppa1_cv08_2_A06999.class (současně si stáhněte i soubor Student.class) a její výstup.