C# - pilíře OOP, 1.díl
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

C# - pilíře OOP, 1.dílC# - pilíře OOP, 1.díl

 
Hledat
Moderní platforma pro vytvoření vašeho nového webu – Wix.com.
Nyní už můžete mít web zdarma.
Vybavení pro Laser Game
Spuštěn Filmový magazín
Laser Game Brno

C# - pilíře OOP, 1.díl

Google       Google       17. 2. 2009       23 628×

Vítejte u mého miniseriálu, ktery zaměřím na pilíře objektově orientovaného programování v C#. V miniseriálu vyjdou 3 díly a postupně probereme dědění, zapouzdření a polymorfismus.

Reklama
Reklama

Dědičnost

Je vlastnost, která vývojářům umožňuje opětovné využití kódu. Jednoduše řečeno, dědění dovoluje budovat nové třídy na základě existujících tříd. V praxi to znamená, že pokud vybudujeme třídu trida1 a do ní umístíme metody metoda1, metoda2 a metoda3, druhá třída potomek1 bude potomek trida1 a bude obsahovat tyto metody dědic1, dědic2 a dědic3. Díky dědičnosti v OOP nyní můžeme vytvořit instanci třídy potomek1 a volat metody třídy potomek1 ale i trida1. Podívejme se na kód:

potomek1 potomek = new potomek1();
//dědičnost nám zpřístupní metody třídy trida1, aniž bychom museli tvořit její instanci
potomek.metoda1();
potomek.metoda2();
potomek.metoda3();
//ale samozřejmé je, že můžeme volat i metody třídy potomek1
potomek.dedic1();
potomek.dedic2();
potomek.dedic3();

Pokud budeme definovat potomek1 jako samostatnou třídu a pokusíme se volat metody třídy trida1, dojde při kompilaci k chybě.

potomek1 potomek = new potomek1();
//tato část řádku vyhodí chybu v případě, že třída potomek1 nebude definována jako dědic třídy trida1
potomek.metoda1();
potomek.metoda2();
potomek.metoda3();
//volám metody třídy potomek1 - vše proběhne, jak má
potomek.dedic1();
potomek.dedic2();
potomek.dedic3();

Nyní si naši třídu převedeme do reálného světa. Vytvoříme třídu Pekárna, která bude definována jako mateřská, a třídy, jež budou dědit metody rodiče Pekárna. Budou to:

  • Rohlíky
  • Dorty
  • Koblihy

Pekárna bude definovat tři základní metody, společné pro všechny třídy. Těmito metodami budou:

  • Suroviny(); - vezme potřebné suroviny jako mouka, cukr, vajíčko,
  • PripravTesto(); - připraví těsto pro tvorbu rohlíku, dortu nebo koblihy,
  • Pec(); - upeče hotový výtvor.
namespace dědičnost{
  class Pekárna{
    public suroviny Suroviny(int pocet){     
    //příkazy
    }
    public testo PripravTesto(suroviny sur){      
    //příkazy
    }
    public pec Pec(testo test, int pocet){      
    //příkazy
    }
  }
}

Třída Rohlíky bude definovat jednu metodu: VytvorRohlik();. Tato metoda bude využívat metody třídy Pekárna.

namespace dědičnost{
  class Rohlíky:Pekárna{
      public rohik VytvorRohlik(){
       //vyberu suroviny, které potřebuji pro přípravu těsta rohlíku zadaného počtu rohlíků
      suroviny sur = Suroviny(5); 
      //ze surovin připravím těsto
      testo test = PripravTesto(sur);
     //metodě Pec předám hotové těsto a vrátím upečený výtvor
      return Pec(test); 
    }
  }
}

Další třídy Dorty a Koblihy budou vypadat podobně. Datové typy jsou smyšlené a jazyk C# je neobsahuje, byly použity pouze pro demonstraci.

V dnešním díle jsme si krátce představili jeden ze tří pilířů OOP, a to dědičnost. V dalších dílech se podíváme na zapouzdření a polymorfismus.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Student ČVUT FJFI katedry softwarového inženýrství v ekonomii. Mezi jeho zájmy patří programování a sport. Autor má zkušenosti s PHP 5, MySQL, XHTML a CSS. Zajímá se o platformu .NET, jazyk C#, ASP.NET a WPF.
Web    

Nové články

Obrázek ke článku SODAT vidí budoucnost datové bezpečnosti ve strojovém učení

SODAT vidí budoucnost datové bezpečnosti ve strojovém učení

Firmy chrání svá citlivá data často nedostatečně. Podle průzkumu společnosti SODAT se v minulém roce setkalo až 80 % z nich s bezpečnostním incidentem ztráty nebo úniku dat. Jedna z pilotních firem, která testovala novou verzi řešení SODAT Protection & Analytics 2.0pro bezpečností analýzu a monitoring dat díky novince zjistila, kdo z disku smazal důležité výkresy a mohla na incident včas reagovat.

Reklama
Reklama
Obrázek ke článku Kontrolujete pracovní emaily i na dovolené? 7 tipů odborníka, jak nepřijít o data

Kontrolujete pracovní emaily i na dovolené? 7 tipů odborníka, jak nepřijít o data

Letní měsíce jsou pro většinu zaměstnanců spojené s každoroční dovolenou. Z údajů Českého statistického úřadu vyplývá, že v roce 2017 podnikli Češi přes 13 milionů delších cest (tzn. s více než čtyřmi noclehy). Přitom právě na období července, srpna a září připadá více než 7,5 milionů z nich. Nicméně tradiční představu o dovolené jako o čase, kdy má práci na starost někdo jiný, Češi boří. 

Obrázek ke článku 10 SEO mýtů, které už nemusíte v roce 2018 řešit

10 SEO mýtů, které už nemusíte v roce 2018 řešit

„Kolik má být na stránce klíčových slov?“, „Nemáš vyplněný meta tag keywords, to nebude fungovat.“, „Katalogy jsou mrtvý“. Také jste už slyšeli některé z těchto otázek? Pojďme si na ně konečně jednou provždy odpovědět.

Obrázek ke článku Trend Micro pomohlo usvědčit viníky v mezinárodním případu Scan4You

Trend Micro pomohlo usvědčit viníky v mezinárodním případu Scan4You

Společnost Trend Micro Incorporated, globální lídr v oblasti kybernetické bezpečnosti, oznámila podrobnosti o své úzké spolupráci s FBI v případu Scan4You. Trend Micro se podílelo na identifikaci osob, které byly spojeny se službou Scan4You Counter Antivirus, což vedlo k jejich odsouzení.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032018 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý