Uvod v dedovanje v C #

Dedovanje v C # je postopek pridobivanja vseh lastnosti enega razreda v drug razred. Obstajata dva razreda, ki se imenujeta osnovni razred in izvedeni razred. Osnovni razred je znan tudi kot nadrejeni razred in lastnosti ali metode tega razreda želimo podedovati drugemu razredu.

Izvedeni razred je znan kot nadrejeni razred, ki se uporablja za podedovanje lastnosti in metod osnovnega razreda ali nadrejenega razreda. Pomaga pri ponovni uporabi iste kode in ni treba znova in znova definirati istih lastnosti.

Dedovanje je eden močnih konceptov ali temeljnih lastnosti objektno usmerjenega programskega jezika. Široko se uporablja v vseh programskih jezikih, ki temeljijo na OOP. Njegov glavni namen je ponovna uporaba iste kode. Primer osnovne strukture dedovanja je naveden spodaj:

class BaseClass ( )
class ChildClass: BaseClass ()

Vrste dedovanja v C #

V C # obstajajo različne vrste dedovanja:

1. Enostopenjsko dedovanje

V enojnem dedovanju obstaja samo en osnovni razred in en izvedeni razred. Pomeni, da bo otroški razred podedoval lastnosti nadrejenega razreda in ga uporabljal.

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

2. Večni nivo dedovanja

Pri tej vrsti dedovanja je na voljo samo en osnovni razred in več izpeljanih razredov. Če je razred ustvarjen z uporabo drugega izpeljanega razreda, je znano kot večstopenjsko dedovanje.

Primer:

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. Večkratno dedovanje

Pri tej vrsti dedovanja je to mogoče doseči s pomočjo več vmesnikov, ne z razredom. Z enostavnimi besedami, C # ne podpira več dedovanja, če pa ga želite doseči, je to mogoče doseči samo s pomočjo vmesnikov.

Primer:

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

4. Hierarhično dedovanje

V tej vrsti dedovanja obstaja en nadrejeni razred, drugi izvedeni razredi pa dedujejo isti nadrejeni razred, da dosežejo to dednost.

Primer :

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()
(
)
)

Prednosti dedovanja

Prednosti dedovanja so:

  • Pomaga pri uporabi iste kode, pomeni ponovno uporabo kode.
  • Zmanjša odvečnost kode.
  • Pomaga pri udobnejšem branju kode.
  • Zmanjša tudi velikost izvorne kode in datoteke.
  • Pomaga pri razširjanju kode.
  • Kodo je enostavno upravljati, saj je razdeljena na razrede osnovnega in otroškega razreda.
  • Zasebni člani ne dobijo dostopa do izpeljanega razreda, kadar člani osnovnega razreda dedujejo izpeljani razred.
  • Ne podpira več dedovanja, vendar jih je mogoče doseči z vmesniki.
  • Pomaga pri doseganju polimorfizma, ki omogoča, da predmet predstavlja več vrst.
  • Pomaga pri delitvi velike kode na majhne koščke.

Značilnosti dedovanja

Značilnosti dedovanja so:

  • Dedovanje je mogoče uporabiti za preprečevanje neposredne instancije razreda in za dosego te abstraktne ključne besede.
  • Do članov osnovnega razreda je mogoče dostopati v izpeljanem razredu, razen do članov zasebnega ključa.
  • Člani osnovnega razreda se lahko dedujejo v izpeljanem razredu, razen konstruktorja in destruktorja.
  • V C # morajo navidezne metode osnovnega razreda v izpeljanem razredu uporabiti ključno besedo override.
  • V C #, da preprečite dedovanje razreda, ki ga je mogoče deklarirati z zapečateno ključno besedo.
  • Če je treba podedovane člane skriti z istim imenom in podpisom v izpeljanem razredu, potem je treba to metodo opredeliti z novo ključno besedo.

Zakaj uporabljati dedovanje in kako olajša delo?

Dedovanje se uporablja, kadar je treba isto kodo uporabiti v drugem razredu. Torej, namesto da napišemo isto kodo, vedno znova obstaja koncept objektno usmerjenega programiranja, ki je Inheritance, ki pomaga pri uporabi iste funkcionalnosti, kot so metode ali lastnosti enega razreda v drug razred. S pomočjo podpičja (:) lahko pripadnike osnovnega razreda podedujemo v otroški razred ali izpeljani razred.

Delo je enostavno, saj pomaga izogniti zmedi pri klicanju metode, iz katere se prikliče metoda razreda. Ponovno uporabi kodo in naredi datoteko lažjo z manjšim številom vrstic izvorne kode. Zaradi tega je koda manj odvečna in bolj prilagodljiva za uporabo v različnih razredih. Ohranja strukturo programa, ki pri branju kode pomaga enostavno.

Zaključek - Dedovanje v C #

  • Dedovanje je najpogosteje uporabljen koncept objektno naravnanega programiranja v vseh jezikih, ki temeljijo na OOP, in tako kot v C #. Razvijalcu pomaga doseči marsikaj, koda pa postane bolj gladka in berljiva.
  • Polimorfizem je drugi koncept, ki ga lahko dosežemo samo s pomočjo dedovanja. Večina težav je bila rešena s tem, ko gresta dva koncepta skupaj.
  • Pri dedovanju sta osnovni razred in izpeljani razred tesno povezana, kot da pride do kakršnih koli sprememb v osnovnem razredu, potem bo samodejno prizadet ves otroški razred. Dedovanje je treba uporabljati zelo previdno, če člani podatkov niso pravilno uporabljeni in jim je dodeljen pomnilnik, potem to vpliva na uspešnost aplikacije.
  • Obstajajo različne ravni dedovanja, ki se uporabljajo pri programiranju ali razvoju aplikacije. Izvaja se lahko v kateri koli vrsti aplikacij, kot so spletne ali namizne aplikacije. Od razvijalca je odvisno, kako in kje uporabiti dediščino, saj daje veliko prožnosti, lastnosti in pomaga doseči stvari.

Priporočeni članki

To je vodnik za dedovanje v C #. Tu smo razpravljali o uvodu, vrstah, prednostih in značilnostih Dedovanja v C #. Obiščite lahko tudi druge naše predlagane članke, če želite izvedeti več -

  1. Dedovanje v VB.Net
  2. Kaj je Multithreading v C #?
  3. C # ukazi
  4. C # vs JavaScript
  5. Dedovanje v Javi
  6. Metode večreznega branja v C #