Негізгі айырмашылық – суперкласс пен ішкі сынып
Нысанға бағытталған бағдарламалауда (OOP) жүйе нысандарды пайдаланып модельденеді. Бұл нысандар класс арқылы жасалады. Класс - бұл нысанды жасауға арналған сызба немесе сипаттама. Нысан жасау объектінің данасы ретінде де белгілі. Әрбір объект басқа объектілермен байланысады. Бағдарламаны немесе бағдарламалық құралды Объектіге бағытталған бағдарламалау арқылы жасауға болады. Мұрагерлік - OOP-тағы негізгі ұғым. Бұл кодты қайта пайдалану мүмкіндігін жақсартады. Бағдарламаны басынан жүзеге асырудың орнына, ол бұрыннан бар сыныптың қасиеттері мен әдістерін жаңа сыныпқа мұралауға мүмкіндік береді. Бұл бағдарламаны басқаруға ыңғайлы етуге көмектеседі. Superclass және Subclass - бұл мұраға қатысты екі термин. Бұл мақалада Superclass және Subclass арасындағы айырмашылық талқыланады. Суперсынып пен ішкі сыныптың негізгі айырмашылығы мынада: Суперсынып жаңа сыныптар шығарылатын бұрыннан бар класс, ал ішкі сынып суперсыныптың қасиеттері мен әдістерін мұрагер ететін жаңа класс.
Суперкласс дегеніміз не?
Мұрагерлікте жаңа сыныптар алынатын бар сынып суперкласс ретінде белгілі. Ол сондай-ақ негізгі сынып немесе негізгі сынып ретінде белгілі.
Мұраның әртүрлі түрлері бар. Төмендегі мысалдар арқылы суреттелген. A B және C сыныптары ретінде қарастырыңыз.
01-сурет: мұра түрлері
02-сурет: гибридті мұра
Жоғарыдағы диаграммаларға сәйкес, суперсыныптар әр мұра түріне байланысты өзгереді. Бір деңгейлі мұрагерлікте А суперкласс болып табылады. Көпдеңгейлі мұрада A - В үшін суперсынып, В - С үшін суперсынып. Иерархиялық мұрада A - В және С үшін де суперсынып. Бірнеше мұраларда A және В екеуі де C үшін суперсынып болып табылады.
Гибридті мұра – көп деңгейлі және көп мұралардың тіркесімі. Сол жақтағы диаграммада A - B, C және B үшін суперсынып, C - D үшін суперсыныптар. Оң жақтағы диаграммада A - B және B үшін суперкласс, D - C үшін суперкласс.
Төмендегі Java тілінде жазылған бағдарламаны қараңыз.
03-сурет: Java тіліндегі мұрагерлік бағдарламасы
Жоғарыдағы бағдарламаға сәйкес А класында sum() және sub() әдістері бар. B класында multiply() әдісі бар. B класы А класын кеңейтеді. Сондықтан А класының қасиеттері мен әдістеріне В класы қол жеткізе алады. Сондықтан А класы суперкласс болып табылады. Объектіні жасау үшін В класының анықтамалық түрі алынады. Сонымен, sum(), sub() және multiply() сияқты барлық әдістер объект арқылы қол жетімді. Егер суперкласс сілтеме түрі нысанды жасау үшін пайдаланылса, В класының мүшелеріне қол жеткізу мүмкін емес. мысалы A obj=жаңа B(); Сондықтан суперкласс сілтемесі multiply() әдісін шақыра алмайды, себебі бұл әдіс B класына жатады.
Қосымша класс дегеніміз не?
Жоғарыдағы диаграммаларға сәйкес ішкі сыныптар мұра түріне байланысты өзгереді. Бірыңғай мұрагерлікте B ішкі класс болып табылады. Көпдеңгейлі мұрагерлікте B - A қосалқы сыныбы және С - В қосалқы сыныбы. Иерархиялық мұрада B және C A ішкі сыныптары болып табылады. Бірнеше мұраларда C - A және B үшін қосалқы сынып.
Гибридті мұрада сол жақтағы диаграмма, B және C - A ішкі сыныптары. D - B және C қосалқы сыныптары. Оң жақтағы диаграммада B - A үшін қосалқы сынып. C - ішкі сынып. B және D.
Жоғарыдағы Мұрагерлік бағдарламасына сәйкес В сыныбы А класын кеңейтеді. Сондықтан А класының барлық қасиеттері мен әдістеріне В сыныбы қол жеткізе алады. В сыныбы - А сыныбынан мұра алатын жаңа класс. Ол келесідей белгілі ішкі сынып. Ол еншілес сынып немесе туынды сынып ретінде де белгілі. В сыныбында көбейту () әдісі бар және мұрагерлікті пайдалана отырып, А класының sum() және sub() әдістеріне қол жеткізе алады.
Суперкласс пен қосалқы сыныптың қандай ұқсастығы бар?
Екеуі де мұрагерлікпен байланысты
Суперкласс пен қосалқы сыныптың айырмашылығы неде?
Суперсынып пен ішкі сынып |
|
Мұрагерлікті жүзеге асырған кезде, жаңа сыныптар алынатын бар сынып суперкласс болып табылады. | Мұрагерлікті жүзеге асырған кезде, жоғары сыныптан сипаттар мен әдістерді иеленетін класс ішкі сынып болып табылады. |
Синонимдер | |
Суперкласс негізгі сынып, ата-ана класы ретінде белгілі. | Ішкі сынып туынды сынып, еншілес сынып ретінде белгілі. |
Функционалдық | |
Үлкен сынып ішкі сыныптың қасиеттері мен әдістерін пайдалана алмайды. | Ішкі сынып суперкласстың қасиеттері мен әдістерін пайдалана алады. |
Бір деңгейлі мұра | |
Бір суперкласс бар. | Бір ішкі сынып бар. |
Иерархиялық мұра | |
Бір суперкласс бар | Көптеген ішкі сыныптар бар. |
Көп мұра | |
Суперкласстар көп. | Бір ішкі сынып бар. |
Қорытынды – суперсынып пен ішкі сынып
Мұрагерлік - OOP тұжырымдамасы. Ол жаңа сыныпқа қол жеткізу үшін бар сыныптың қасиеттері мен әдістерін пайдалануға мүмкіндік береді. Мұрагерлік класс - бұл суперкласс, ал туынды класс - ішкі сынып. Суперсынып пен ішкі сыныптың айырмашылығы мынада: Суперсынып жаңа сыныптар алынатын бар класс, ал ішкі сынып суперсыныптың қасиеттері мен әдістерін мұрагер ететін жаңа класс.
PDF суперсынып пен ішкі сыныпты жүктеп алу
Сіз осы мақаланың PDF нұсқасын жүктеп алып, сілтеме жазбасына сәйкес офлайн мақсаттарда пайдалана аласыз. PDF нұсқасын мына жерден жүктеп алыңыз Суперкласс пен қосалқы сыныптың айырмашылығы