C# Наследство


    Наследството е важен концепт во C#. Наследството е концепт во кој дефинирате класи за родители и детска класа.
    Детските класи ги наследуваат методите и својствата на класата родител, но во исто време, тие исто така можат да го изменат однесувањето на методите доколку е потребно. Детската класа, исто така, може да дефинира сопствени методи доколку е потребно.
    Во следниот пример е покажано како можеме да го вклучиме концептот на наследство во нашиот код.

    Чекор 1) Првиот чекор е да го смените кодот за нашата класа Tutorial . Во овој чекор, го додаваме кодот подолу во датотеката Tutorial.cs

 

    Забележете дека сега треба да го додадеме модификаторот за пристап „protected“ и во полето TutorialID и TutorialName.
    Само кога го имате овој начин на пристап (protected), детската класа ќе може да ги користи полињата на матичната класа.
    Чекор 2) Вториот чекор е да ја додадеме нашата нова детска класа. Името на оваа класа ќе биде „Guru99Tutorial“. Во овој чекор, го додаваме кодот подолу во датотеката Tutorial.cs.
Кодот треба да се стави по дефиницијата на класата Tutorial.

Објаснување на кодот:
1. Првиот чекор е да се создаде детска класа Guru99Tutorial. Исто така, треба да споменеме дека оваа класа ќе биде детска класа на класата Tutorial. Ова е направено со специјалниот знак „:“.
2. Следно, ние дефинираме метод наречен RenameTutorial. Тој ќе се користи за преименување на полето TutorialName .Овој метод прифаќа стринг променлива која го содржи новото име на Tutorial.
3. Потоа го доделивме параметарот pNewName на полето TutorialName.

Забелешка: - Иако не го дефиниравме полето TutorialName во класата „Guru99Tutorial“, сепак можеме да пристапиме до ова поле. Ова се должи на фактот дека „Guru99Tutorial“ е детска класа од класа Tutorial . И бидејќи ги направивме полињата на класата Tutorial како protected, може да се пристапи до оваа класа.
Чекор 3) Последниот чекор е да ја измениме нашата главна датотека Program.cs. Во нашата апликација за конзоли, ќе направиме објект од класата Guru99Tutorial. Со овој објект, ќе го повикаме методот RenameTutorial. Потоа ќе го прикажеме полето TutorialName со помош на методот GetTutorial.

Објаснување на кодот:
1. Првиот чекор е да креирате објект за класата Guru99Tutorial. Ова е направено преку new клучниот збор. Забележете дека овој пат не создаваме објект од класата Tutorial.
2. Ние го користиме методот RenameTutorial на класата Guru99Tutorial за да го смениме полето TutorialName. Ја пренесуваме низата „.Net by Guru99“ на методот RenameTutorial.
3. Потоа го повикуваме методот GetTutorial. Забележете дека иако овој метод не е дефиниран во класата Guru99Tutorial, ние се уште сме во можност да пристапиме до овој метод. Излезот на методот GetTutorial потоа се прикажува на конзолата преку методот Console.WriteLine.

Ако горниот код е правилно внесен и програмата е успешно извршена, ќе се прикаже следниот излез.
Излез:

Од излезот, јасно можеме да видиме дека полето TutorialName е преименувано во „.Net by Guru99“. Ова беше овозможено со методот RenameTutorial наречен од детската класа.