Увод у наслеђивање у Ц #
Наслеђивање у Ц # је процес стицања свих својстава једне класе у другу класу. Постоје две класе које се називају основна класа и изведена класа. Базна класа је такође позната као родитељска класа и својства или методе ове класе које желимо наслиједити другој класи.
Деривирана класа позната је као подређена класа која се користи за насљеђивање својстава и метода основне класе или родитељске класе. Помаже у поновној употреби истог кода и нема потребе да се поново и изнова дефинирају иста својства.
Насљеђивање је један од моћних концепата или основних атрибута објектно програмског језика. Широко се користи у свим програмски језик заснован на ООП-у. Његова главна сврха је да поново користи исти код. Пример основне структуре наследства дат је у даљем тексту:
class BaseClass ( )
class ChildClass: BaseClass ()
Врсте наследства у Ц #
У Ц # постоје различите врсте наследства:
1. Наслеђивање на једном нивоу
У Појединачном насљеђивању постоји само једна основна класа и једна изведена класа. То значи да ће дечија класа наследити својства родитељске класе и користити је.
Пример:class BaseClass
(
public void hello()
(
Console.WriteLine("Parent's Hello Method");
)
)
class ChildClass : BaseClass
(
public void World()
(
Console.WriteLine("Child's World Method");
)
)
2. Наслеђивање на више нивоа
У овом типу наследства постоји само једна основна класа и више изведених класа су доступне. Ако је класа створена употребом друге изведене класе, позната је као вишеслојно насљеђивање.
Пример:
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. Вишеструко наслеђивање
Код ове врсте насљеђивања ово се може постићи уз помоћ вишеструког интерфејса, а не помоћу класе. Једноставним речима, Ц # не подржава више наслеђивања, али ако то желите постићи то се може постићи само уз помоћ интерфејса.
Пример:
Interface A ()
Interface B ()
Class C: A, B ()
4. Хијерархијско наслеђивање
У овом типу наследства постоји једна родитељска класа, а остале изведене класе наслеђују исту родитељску класу да би се то постигло.
Пример :
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()
(
)
)
Предности наслеђивања
Предности наслеђивања су:
- То помаже у кориштењу истог кода опет значи поновну употребу кода.
- То смањује сувишност кода.
- То вам помаже у читању кода угодније.
- Такође смањује величину изворног кода и датотеке.
- Помаже у проширивању кода.
- Кодом је лако управљати јер је подељен на класе основне класе и дечије класе.
- Приватним члановима не приступа се изведена класа када чланови базне класе наслеђују изведену класу.
- Не подржава више насљеђивања, али се може постићи путем интерфејса.
- Помаже у постизању полиморфизма који објекту омогућава да представља више врста.
- Помаже у подели великог кода на мале делове.
Карактеристике наследства
Карактеристике наследства су:
- Наслеђивање се може користити за спречавање директног инстанцирања класе, а за постизање ове апстрактне кључне речи се користи.
- Члановима основне класе може се приступити у изведеној класи осим чланова приватног кључа.
- Чланови основне класе могу се наследити у изведеној класи осим конструктора и деструктора.
- У Ц #, виртуелне методе основне класе морају да користе кључну реч "прегласавање" у изведеној класи.
- У Ц #, да спречите наследство класе која се може декларирати помоћу запечаћене кључне речи.
- Ако наслијеђени чланови морају бити скривени истим именом и потписом у изведеној класи, тада се та метода мора дефинирати новом кључном ријечи.
Зашто користити Насљеђивање и како олакшава рад?
Насљеђивање се користи када се исти код мора користити у другој класи. Дакле, уместо писања истог кода, поново и поново, постоји концепт објектно оријентисаног програмирања које је наследност која помаже у кориштењу исте функционалности попут метода или својстава једне класе у другу класу. Помоћу тачке са зарезом (:), чланови базне класе можемо наследити дечију или изведену класу.
Лако је радити јер помаже у избегавању збрке позива метода из којих се позива метода класе. Поновно користи код и чини датотеку лакшом тежином, с мањим бројем линија изворног кода. То чини код мање сувишним и флексибилнијим за употребу у различитим класама. Чува структуру програма која помаже у читању кода лако.
Закључак - Наслеђивање у Ц #
- Наслеђивање је најчешће коришћени концепт објектно-оријентисаног програмирања у свим ООП-овим језицима, па тако и у Ц #. То помаже програмеру да постигне многе ствари и чини код глатким и читљивијим.
- Полиморфизам је други концепт опса који се може постићи само уз помоћ Наслеђивања. Већина проблема је решена ако ова два концепта иду руку под руку.
- У наслеђивању су основна класа и изведена класа чврсто повезани као да има било каквих промена у основној класи и аутоматски ће се сва дечја класа захватити. Наслеђивање треба да се користи врло пажљиво, као да се чланови података не користе правилно и ако им је додељена меморија, то утиче на перформансе апликације.
- Постоје различити нивои наследства који се користе у програмирању или развоју апликације. Може се имплементирати у било коју врсту апликација попут веб апликација или десктоп рачунара. О програмеру зависи како и где користити наслеђивање јер пружа пуно флексибилности, функција и помаже у постизању ствари.
Препоручени чланци
Ово је водич за наслеђивање у Ц #. Овде смо разговарали о уводу, врстама, предностима и карактеристикама наследства у Ц #. Можете и да прођете кроз друге наше предложене чланке да бисте сазнали више -
- Наслеђивање у ВБ.Нет
- Шта је Мултитхреадинг у Ц #?
- Ц # команде
- Ц # вс ЈаваСцрипт
- Наслеђивање у Јави
- Методе мултитхреадинг-а у Ц #