background image

16. наследяване между класове. Основни и производни класове.

Една от най-важните характеристики на ООП е производните класове и наследяването. 
От съществуващ клас може да се създаде нов клас, като се използва механизма на 
наследяване. Класът, който е създаден, се нарича производен, а този от който се създава 
– базов или основен клас. Производен клас може да е основен за други класове и 
обратното т.к. тези понятия са относителни. Производния клас може да наследи 
компонентите на един или на няколко базови класа (единично или множествено 
наследяване). Терминът наследяване произлиза от това, че множеството от 
компонентите на един производен клас се състои от компонентите на неговите базови 
класове и компоненти, декларирани в самия производен клас. И този механизъм, чрез 
който производния клас получава компонентите на базовия клас е наследяване. 
Процеса на наследяване се изразява в следното:
-наследяват се данните и методите на основния клас;
-получава се достъп до някое от наследените членове на основния клас;
-производния клас „познава”  реализацията само на основния клас, от който произлиза;
-производния клас може да е основен за други класове.
Ако базовия клас е деклариран като public в производния клас, всички private, public и 
protected на базовите компоненти се наследяват съответно като private, public и 
protected на производен клас.
Ако базовия клас е деклариран като като private в производния, всички нехови 
компоненти се наследяват като private.
Ако базовия клас е деклариран като protected в производния клас, private се наследява 
като private, а protected и public като protected.
Производния клас има пряк достъп до компонентите, декларирани като public и 
protected, но няма до private в базовия клас.
-Достъп на основен клас до членовете на производен и обратно: методите на основния 
клас нямат достъп до членовете на производния клас, защото когато основния клас се 
дефинира, не е ясно какви производни класове ще произхождат от него.
-Достъп до членове на основен клас, чрез дефиниция на методите на производен клас. 
Правила:
1.Методите на производен клас нямат директен достъп до членовете от private – 
секцията на основния му клас.
2.В дефиницията на собствените методи на производния клас може директно да се 
използват член-данни на public – секцията и protected – секцията на основния му клас.
3.В дефиницията на собствените методи на производния клас могат да се използват 
методите от public и protected секциите на основния му клас.
-Достъп на ф-ии, приятели на производния клас до компоненти на основния му клас.
Функциите приятели на производния клас имат пряк достъп до всеки компонент, 
деклариран в класа и до public и protected компонентите на основния клас. 
Декларацията за приятелство не се наследява и ф-ята приятел на базовия клас не е 
приятел на производния клас.
-Достъп до методите чрез обекти на основния и производния клас.
Обект на основния клас има пряк достъп до всички компоненти public и няма пряк 
достъп до компонентите – private и protected.
Обект на производен клас има пряк достъп до public – компонентите на собствения си 
клас и до компонентите на основния клас, наследени е производен клас като public.

Това е само предварителен преглед!

Наследяване между класове. Основни и производни класове

Една от най- важните характеристики на ооп е производните класове и наследяването. От съществуващ клас може да се създаде нов клас, като се използва механизма на наследяване...

Наследяване между класове. Основни и производни класове

Предмет: Програмиране, Информатика, ИТ
Тип: Теми
Брой страници: 1
Брой думи: 441
Брой символи: 2599
Изтегли
Този сайт използва бисквитки, за да функционира коректно
Ние и нашите доставчици на услуги използваме бисквитки (cookies)
Прочети още Съгласен съм