Кластар арасындағы қатынасты сипаттау Мұралау мүмкіндіктері



жүктеу 1,03 Mb.
Дата09.01.2022
өлшемі1,03 Mb.
#32025
түріПрограмма
Кластар арасындағы қатынасты сипаттау

Кластар арасындағы қатынасты сипаттау

Мұралау мүмкіндіктері

Мұралау ОБП-дың қуатты құралы болып табылады. Ол ұрпақ-кластардың ата-кластар қасиеттерін иемденетін және оларды толықтыру немесе өзгерту мүмкіндігіне ие болатын иерархияларды құруға мүмкіндік береді.

Мұралау төмендегідей өзара байланысты мақсаттар үшін қолданылады:

  • программадан қайталанатын код фрагменттерін жою;
  • программаны өзгертуді жеңілдету;
  • бұрын құрылған программалар негізінде жаңа программалар құруды жеңілдету.
  •  Сонымен қатар, программалардың бастапқы кодын пайдалануға мүмкіндік болмайтын жағдайда, оларға өзгеріс енгізуді қажет ететін объектілерді қолданудың жалғыз мүмкіндігі  осы мұралау болып

    табылады.

• C# тілінде кластың ұрпақтары саны бірнешеу болуы мүмкін

• C# тілінде кластың ұрпақтары саны бірнешеу болуы мүмкін

• Кластың тек бір ата-кластан және интерфейстердің кез келген санынан мұралау мүмкіндігі бар.

• Мұралау кезінде ұрпағы ата-тегінің барлық элементтерін қабылдайды.

• private элементтерін оның ұрпақтары тікелей пайдалана алмайды.

• protected элементтерін тек ұрпақтары пайдалана алады.


class Monster

{ ... // private және public-тен басқа,

// protected қолданылады

}

class Daemon : Monster



{ ...

}

Объектілер және кластар үшін кіру ережелері :

Объектілер және кластар үшін кіру ережелері :

  • Private ретінде хабарланған элементтер функция-мүшелерге, кластың өрістеріне және туынды кластардың функция-мүшелеріне кіре алады.
  • Public ретінде хабарланған элементтер кез-келген функцияларға кіре алады.
  • Ашық (public) базалық класс ретінде қолданған кезде, оның ашық элементтері туынды класының ашық элементі болады, ал қорғалған (protected) элементтері-туынды класының қорғалған элементтері болады.
  • Жабық (рrivate) класс базалық класс ретінде қолданылған, және оның қорғалатын элементтері.

Виртуалды тәсілдерді қолдану

Виртуалды тәсілдер туынды кластармен базалық класқа сілтеме жасау арқылы жұмыс істегенде қолданылады.

• Сонымен қатар, объектілерді тәсілдерге параметр ретінде беру кезінде виртуалды тәсілдер қолданылады. Тәсілдің параметрлерінде базалық типті объектсипатталады, ал шақыру кезінде оған туынды класс объектісі беріледі. Бұл жағдайда тәсілдің ішіндегі объект үшін шақырылатын виртуалды тәсілдер параметрдің емес, аргументтің типіне сәйкес болады.

• Кластарды сипаттау кезінде виртуалды тәсілдер ретінде туынды кластарда басқа жолмен орындалатын тәсілдерді анықтау ұсынылады. Егер иерархияның барлық кластарында тәсіл бірыңғай жүзеге асатын болса, оны жай тәсіл ретінде анықтаған жөн.

Абстрактілі кластар

• Абстрактілі класс тек ұрпақтарды тудыру үшін қолданылады. Әдетте онда ұрпақтардың әрқайсысы өзінің қолданатын жолымен жүзеге асыратын тәсілдер жиыны беріледі. Абстрактілі кластар туынды кластарда нақтылануы жоспарланатын жалпы ұғымдарды бейнелеуге арналған

• Абстрактілі класс иерархия үшін толықтай интерфейсті анықтайды және бұл кезде класс тәсілдеріне ешбір нақты әрекеттер сәйкес келмеуі мүмкін. Бұл жағдайда тәсілдердің тұлғасы бос болады және олар abstract спецификациясымен жарияланады.

• Егер класта кем дегенде бір абстрактілі тәсіл бар болса, класс түгелдей абстрактілі класс ретінде (abstract спецификаторымен) сипатталуы тиіс.

• Абстрактілі кластың құрамында толықтай анықталған тәсілдер де болуы мүмкін, бұл оның интерфейстен айырмашылығы.

Полиморфты тәсілдер

• Абстрактілі кластар келесі жағдайларда қолданылады:

• бір иерархияның объектілерін сақтауға арналған мәліметтер құрылымдарымен жұмыс істеу кезінде тәсілдердің параметрлері ретінде.

• Егер абстрактілі кластан туындаған класс барлық абстрактілі тәсілдерді қайта анықтайтын болмаса, ол да абстрактілі класс ретінде сипатталуы тиіс.

• Параметрі абстрактілі класс болатындай тәсіл құруға мүмкіндігі бар. Программаның орындалуы барысында бұл параметрдің орнына кез келген туынды кластың объектісі берілуі мүмкін. Бұл бір иерархия шеңберіндегі кез келген типті объектімен жұмыс істейтін полиморфты тәсілдерді құруға мүмкіндік береді.


жүктеу 1,03 Mb.

Достарыңызбен бөлісу:




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау