Objektové programování I (C#) – 2 RNDr. Michal Pobucký michal.pobucky@fpf.slu.cz Ústav informatiky – zima 2020 Třídy • Vytvořte konzolovou aplikaci (.NET Core), název projektu 02_Pocitadlo Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Třídy Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Název třídy Můžeme používat jako ostatní typy Třídy Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Proměnná není veřejná, není vidět „z venku“, nedá se k ní přímo přistupovat Metoda DalsiCislo Je veřejná, viditelná „z venku“, vrací hodnotu typu int. Musí obsahovat příkaz return pro vrácení hodnoty. Základní jednotkou OP je objekt. Objekt obsahuje atributy (vlastnosti) a metody (schopnosti), které umí vykonávat. Třídy Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Třída je vzor, podle kterého se objekty vytváří. Instance je objekt vytvořený podle třídy. Třídy Objektové programování I (C#) - 2 - RNDr. Michal Pobucký • Základem OP je • Zapouzdření • Dědičnost • Polymorfismus Třídy – zapouzdření Objektové programování I (C#) - 2 - RNDr. Michal Pobucký • Umožňuje skrýt atributy a metody • Private, public, protected Třídy – dědičnost Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Třídy – konstruktor Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Zkuste v konstruktoru změnit i proměnnou datumNarozeni. Co se stane a proč? Třídy – konstruktor – přetěžování Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Třídy Objektové programování I (C#) - 2 - RNDr. Michal Pobucký • Všechny třídy jsou odvozeny od třídy object, od které dědí některé metody a atributy Co se stane? Třídy – přetěžování metod Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Třídy – vlastnosti Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Třídy – statická metoda Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Označení static určuje, že nemusíme mít vytvořenou žádnou instanci třídy a můžeme přistupovat k metodám, atributům nebo vlastnostem. To už známe. Kde jsme již použili metodu aniž bychom měli instanci třídy? Třídy – statická metoda Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Označení static určuje, že nemusíme mít vytvořenou žádnou instanci třídy a můžeme přistupovat k metodám, atributům nebo vlastnostem. To už známe. Kde jsme již použili metodu aniž bychom měli instanci třídy? Třídy – práce s pamětí Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Jaký bude výstup a proč? Jaký bude výstup a proč? Třídy – práce s pamětí Objektové programování I (C#) - 2 - RNDr. Michal Pobucký Jaký bude výstup a proč? Jaký bude výstup a proč? 42 42 promenna kopiePromenna Alois Jirásek místo v paměti @@ treti @ ctvrty