Úvod do dědičnosti v C #

Dědičnost v C # je proces získávání všech vlastností jedné třídy do jiné třídy. Existují dvě třídy označované jako základní třída a odvozená třída. Základní třída je také známá jako nadřazená třída a vlastnosti nebo metody této třídy, které chceme zdědit jiné třídě.

Odvozená třída je známá jako podřízená třída, která se používá ke zdědění vlastností a metod základní třídy nebo nadřazené třídy. Pomáhá při opětovném použití stejného kódu a není třeba znovu a znovu definovat stejné vlastnosti.

Dědičnost je jedním z mocných konceptů nebo základních atributů objektově orientovaného programovacího jazyka. Je široce používán ve všech programovacích jazycích založených na OOP. Jeho hlavním účelem je znovu použít stejný kód. Příklad základní struktury dědičnosti je uveden níže:

class BaseClass ( )
class ChildClass: BaseClass ()

Druhy dědičnosti v C #

V C # existují různé typy dědičnosti:

1. Dědičnost jedné úrovně

V Single dědičnosti existuje pouze jedna základní třída a jedna odvozená třída. To znamená, že podřízená třída zdědí vlastnosti nadřazené třídy a použije ji.

Příklad:
class BaseClass
(
public void hello()
(
Console.WriteLine("Parent's Hello Method");
)
)
class ChildClass : BaseClass
(
public void World()
(
Console.WriteLine("Child's World Method");
)
)

2. Víceúrovňové dědictví

V tomto typu dědičnosti existuje pouze jedna základní třída a je k dispozici více odvozených tříd. Pokud je třída vytvořena pomocí jiné odvozené třídy, je známá jako víceúrovňová dědičnost.

Příklad:

class BaseClass
(
public void hello()
(
Console.WriteLine("Parent's Hello Method");
)
)
class ChildClass : BaseClass
(
public void World()
(
Console.WriteLine("Child's World Method");
)
)
class SecondChildClass : ChildClass
(
public void Hi()
(
)
)

3. Vícenásobné dědictví

V tomto typu dědičnosti toho lze dosáhnout pomocí více rozhraní, ne pomocí třídy. Zjednodušeně řečeno, C # nepodporuje vícenásobné dědictví, ale pokud to chcete dosáhnout, lze toho dosáhnout pouze pomocí rozhraní.

Příklad:

Interface A ()
Interface B ()
Class C: A, B ()

4. Hierarchické dědictví

V tomto typu dědičnosti existuje jedna nadřazená třída a další odvozené třídy zdědí stejnou nadřazenou třídu, aby tohoto dědictví dosáhly.

Příklad :

class BaseClass
(
public void hello()
(
Console.WriteLine("Parent's Hello Method");
)
)
class ChildClass : BaseClass
(
public void World()
(
Console.WriteLine("Child's World Method");
)
)
class SecondChildClass : BaseClass
(
public void Hi()
(
)
)

Výhody dědičnosti

Výhody dědičnosti jsou:

  • Pomáhá při opětovném použití stejného kódu.
  • Snižuje redundanci kódu.
  • Pomáhá pohodlnější čtení kódu.
  • To také snižuje velikost zdrojového kódu a souboru.
  • Pomáhá při zajišťování rozšiřitelnosti kódu.
  • Kód lze snadno spravovat, protože je rozdělen do tříd základní třídy a podřízené třídy.
  • Soukromé členy nejsou přístupné v odvozené třídě, pokud jsou členy základní třídy zděděni odvozenou třídou.
  • Nepodporuje vícenásobné dědictví, ale lze jej dosáhnout prostřednictvím rozhraní.
  • Pomáhá při dosažení polymorfismu, který umožňuje objektu reprezentovat více než jeden typ.
  • Pomáhá při rozdělení velkého kódu na malé kousky.

Vlastnosti dědičnosti

Funkce dědičnosti jsou:

  • Dědičnost lze použít k zabránění přímé instanci třídy a k dosažení tohoto abstraktního klíčového slova bylo použito.
  • K členům základní třídy lze přistupovat v odvozené třídě s výjimkou členů soukromého klíče.
  • Členové základní třídy mohou být zděděni v odvozené třídě kromě konstruktoru a destruktoru.
  • V C # musí virtuální metody základní třídy použít přepsané klíčové slovo v odvozené třídě.
  • V C #, aby se zabránilo dědičnosti třídy, která může být deklarována pomocí uzavřeného klíčového slova.
  • Pokud je nutné zděděné členy skrýt ve odvozené třídě se stejným názvem a podpisem, je třeba tuto metodu definovat pomocí nového klíčového slova.

Proč používat dědičnost a jak usnadňuje práci?

Dědičnost se používá, když je třeba stejný kód použít v jiné třídě. Takže místo psaní stejného kódu znovu a znovu existuje koncept objektově orientovaného programování, který je dědičnost, který pomáhá při používání stejné funkce, jako jsou metody nebo vlastnosti jedné třídy na jinou třídu. Pomocí středníku (:) můžeme zdědit členy základní třídy podřízené třídy nebo odvozené třídy.

Usnadňuje zpracování, protože pomáhá vyhýbat se záměně volání metody, z níž se volá metoda třídy. Usnadňuje opětovnou použitelnost kódu a zjednodušuje hmotnost souboru s menším počtem řádků zdrojového kódu. Díky tomu je kód méně redundantní a flexibilnější pro použití v různých třídách. Udržuje strukturu programu, která pomáhá při snadném čtení kódu.

Závěr - Dědičnost v C #

  • Dědičnost je nejrozšířenější koncept objektově orientovaného programování ve všech jazycích založených na OOP a podobně jako v C #. Pomáhá vývojáři dosáhnout mnoha věcí a činí kód plynulejším a čitelnějším.
  • Polymorfismus je další koncept oops, kterého lze dosáhnout pouze pomocí dědičnosti. Většina problémů byla vyřešena tím, že tyto dva pojmy šly ruku v ruce.
  • V Dědičnosti jsou základní třída a odvozená třída pevně spojeny, jako by došlo k nějaké změně v základní třídě, takže bude automaticky ovlivněna celá podřízená třída. Dědičnost musí být používána velmi opatrně, jako by datové členy nebyly správně použity a aby jim byla přidělena paměť, pak to ovlivní výkon aplikace.
  • Existují různé úrovně dědičnosti, které se používají při programování nebo vývoji aplikace. Může být implementován do jakéhokoli typu aplikace, jako jsou webové nebo stolní aplikace. Záleží na vývojáři, jak a kde použít dědičnost, protože poskytuje velkou flexibilitu, funkce a pomáhá dosáhnout věcí.

Doporučené články

Toto byl průvodce dědičností v C #. Zde jsme diskutovali úvod, typy, výhody a vlastnosti Dědičnosti v C #. Další informace naleznete také v dalších navrhovaných článcích.

  1. Dědičnost ve VB.Net
  2. Co je multithreading v C #?
  3. C # Příkazy
  4. C # vs JavaScript
  5. Dědičnost v Javě
  6. Metody multithreadingu v C #

Kategorie: