4. cviceni ========== * dochazka * poznamky k 1. uloze * konzultace k 2. uloze * opakovani zakladnich pojmu - trida, instance - atribut, promenna, konstanta - metoda, parametry, pretizeni metod - staticke atributy a metody - primitivni vs. objektove datove typy - vytvareni instanci, konstruktory - konvence pro pojmenovani - baliky - viditelnost - pretypovani, autoboxing - rozhrani * cykly - for, foreach, while, do...while ! dedicnost - kompozice nedovoluje zmenu vlastnosti tridy - mechanismus pro rozsireni rodicovske tridy - vede ke znovupouzitelnosti trid - kdy pouzit kompozici, kdy dedicnost? - vztah generalizace-specializace - is-a x has-a relationship - klicove slovo extends - potomek dedi vse krome konstruktoru - prekryti metod a prekryti atributu - klicove slovo super - abstraktni tridy x finalni tridy - abstraktni metody x finalni metody ! trida Object - rodicovska trida vsech trid v Jave - obsahuje metody spolecne vsem tridam - metoda toString() - metody equals() a hashCode() * nemenitelna trida reprezentujici obdelnik - atributy pro sirku, vysku a barvu - odpovidajici konstruktor - get metody pro jednotlive atributy - metody pocitajici obvod a obsah - metoda toString() * nemenitelna trida reprezentujici trojuhelnik - atributy pro delky stran a, b, c - odpovidajici konstruktor - get metody pro jednotlive atributy - metody pocitajici obvod a obsah - metoda toString() * abstraktni trida pro geometricky utvar - nadtrida pro kruznici, obdelnik a trojuhelnik - atributy spolecne tridam pro kruznici, obdelnik a trojuhelnik => z podtrid by spolecne atributy mely zmizet - konstruktor pro inicializaci spolecnych atributu - get metody pro spolecne atributy => z podtrid by spolecne metody mely zmizet * rozhrani pro geometricky utvar - metody spolecne vsem geometrickym utvarum - metoda pro zjisteni barvy - metoda pro zjisteni obsahu a obvodu - abstraktni trida by mela implementovat toto rozhrani * trida pro demonstraci - pouziti metody main() - vytvoreni nekolika instanci geometrickych utvaru - pracovani s utvary pomoci rozhrani - vypis jejich reprezentace na standardni vystup * zadani 3. ulohy