Úloha číslo 2 Jednoduchá interakce objektů Radek Ošlejšek Abstract Cílem úlohy je naučit se základní práci s třídami a jejich instancemi. _________________________________________________________________ Table of Contents Co je potřeba znát Zadání Odevzdání úlohy Metodické pokyny Pokyny pro opravování Co je potřeba znát Pro vyřešení této úlohy je třeba * rozumět pojmům třída, instance, metoda, volání metody, parametry metody, návratová hodnota metody, atribut, typ (parametru, návratové hodnoty nebo atributu). Zadání * Do třídy Cartridge doplňte konstruktor s jedním parametrem určujícím barvu náplně. * Propiska bude obsahovat náplň. Proto do třídy Ballpen přidejte atribut cartridge typu Cartridge, který ponese informace o náplni. Dále přidejte metodu setCartridge(), která vezme jako parametr proměnnou typu Cartridge a nastaví atribut cartridge. Nakonec přidejte metodu getCartridge(), která vrátí aktuální náplň. * Vytvořte třídu PenFactory. Třída bude obsahovat čítač vyrobených propisek a čítač vyrobených náplní. Do třídy PenFactory dejte následující metody: produceCartridge(): Jako vstupní argument vezme barvu náplně, vytvoří novou náplň a vráti ji jako návratovou hodnotu. produceBallpen(): Jako vstupní argumenty vezme barvu náplně a text reklamního loga, vytvoří novou propisku i s náplní a vrátí ji jako návratovou hodnotu. producedBallpens(): Vrátí počet vyrobených propisek. producedCartridges(): Vrátí počet vyrobených náplní. toString(): Vrátí řetězec obsahující dva řádky přesně podle následujícího vzoru (X a Y jsou čísla): Pocet vyrobenych propisek: X Pocet vyrobenych naplni: Y * Do třídy PenFactory přidejte metodu main() s následujícím obsahem (nic jiného v těle metody nebude!): + Vytvoří se dvě výrobny propisek. + První výrobna vyrobí jednu propisku s modrou náplní a logem "FI MU", jednu propisku s červenou náplní a logem "FI MU", jednu samostatnou modrou náplň a jednu samostatnou červenou náplň. + Druhá výrobna vyrobí propisku s modrou náplní a logem "Linux" a jednu samostatnou modrou náplň. + Nakonec vypíšeme stav první a druhé výrobny. Výpis bude mít následující podobu (přesně!). Pro výpis využijte System.out.println() a metody toString(). Prvni vyrobna: Pocet vyrobenych propisek: 2 Pocet vyrobenych naplni: 4 Logo: FI MU, napln: modra Logo: FI MU, napln: cervena Napln: modra Napln: cervena Druha vyrobna: Pocet vyrobenych propisek: 1 Pocet vyrobenych naplni: 2 Logo: Linux, napln: modra Napln: modra * Třídy přeložte a spusťte. Odevzdání úlohy Před odevzdáním úlohy si zkontrolujte: 1. Zda jde úloha přeložit a zda jdou přeložit i všechny testy. 2. Zdali všechny testy projdou bez chyby. 3. Zda jste nezapomněli správně vyplnit hlavičky všech tříd ve formátu JavaDoc (popis třídy, autor, popis všech metod, apod.). Metodické pokyny Vysvětlete studentům význam metody main(), System.out.println(), toString() a význam znaku \n v řetězci. Pokyny pro opravování * Prověřte, že projdou testy. * Zkontrolujte obsah metody main(). * Porovnejte výstup programu se zadáním.