Кластар мен құрылымдар арасындағы айырмашылық

Кластар мен құрылымдар арасындағы айырмашылық
Кластар мен құрылымдар арасындағы айырмашылық

Бейне: Кластар мен құрылымдар арасындағы айырмашылық

Бейне: Кластар мен құрылымдар арасындағы айырмашылық
Бейне: Жасуша мембранасы арқылы белсенді және енжар тасымалдаудың ұқсастықтары мен айырмашылықтары. 9 сынып 2024, Шілде
Anonim

Сыныптар және құрылымдар

Нысанға бағытталған (OO) бағдарламалау тілдерінің кейбір негізгі ұғымдары инкапсуляция, мұрагерлік және полиморфизм болып табылады. Класс және Құрылым - бұл екі OO конструкциясы/құралы, олар бағдарламашыларға OO бағдарламалау тілдерінің көпшілігінде осы тұжырымдамаларға қол жеткізуге көмектеседі (Java құрылымдарды қамтамасыз етпейді). Класстар – нақты дүние объектілерінің абстрактілі көрінісі. Құрылымдар ұқсас қолданылуы бар сыныптарға өте ұқсас, бірақ сыныптармен салыстырғанда аз шектеулер бар. Сыныптар да, құрылым да ұқсас деректер түрін бірге топтау үшін пайдаланылады.

Сыныптар дегеніміз не?

Кластар нақты әлем нысандарының дерексіз көрінісін бейнелейді, ал қарым-қатынастар әр сыныптың басқалармен байланысын бейнелейді. Кластардың да, қатынастардың да атрибуттар деп аталатын қасиеттері болады. Сыныптардағы әдістер осы сыныптардың әрекетін көрсетеді немесе анықтайды. Класстардың әдістері мен атрибуттары класс мүшелері деп аталады. Әдетте, инкапсуляция атрибуттарды жеке ету арқылы, сол атрибуттарға қол жеткізу үшін пайдаланылатын жалпы әдістерді жасау арқылы қол жеткізіледі. Объект - бұл сынып данасы. Мұрагерлік пайдаланушыға сыныптарды (ішкі сыныптар деп аталатын) басқа сыныптардан (супер сыныптар деп аталады) кеңейтуге мүмкіндік береді. Полиморфизм программалаушыға оның супер класс объектісінің орнына класс объектісін ауыстыруға мүмкіндік береді. Әдетте мәселенің анықтамасында кездесетін зат есімдер бағдарламада тікелей сыныптарға айналады. Сол сияқты етістіктер тәсілдерге айналады. Жалпы, жеке және қорғалған класстар үшін пайдаланылатын типтік қатынас модификаторлары болып табылады. Класс диаграммасы жүйелердің класстарын, сыныптар арасындағы қатынастарды және олардың атрибуттарын көрсетеді.

Құрылымдар дегеніміз не?

Жоғарыда айтылғандай, құрылымдар ұқсас қолданылуы бар сыныптарға өте ұқсас, бірақ сыныптарға қарағанда мүмкіндіктері шектеулі. Шын мәнінде, сыныптарды құрылымдардың кеңейтімі ретінде қарастыруға болады. Мысалы, құрылымдар C++ тіліндегі сыныптармен бірдей, бірақ әдепкі бойынша олардың жалпы мүшелері бар. Құрамдас түрді көрсету үшін құрылымды пайдаланушы анықтай алады. Сыныптарға ұқсас құрылымдарда көптеген түрлерге жататын мүшелер бар. struct кілт сөзі C және C++ тіліндегі құрылымды анықтау үшін пайдаланылады, ал Structure кілт сөзі. NET бағдарламалау тілдерінде бірдей үшін пайдаланылады.

Сыныптар мен құрылымдардың айырмашылығы неде?

Сыныптар да, құрылымдар да бағдарламалау тілдерінде кездесетін ұқсас конструкциялар болса да, олардың нәзік айырмашылықтары бар. Әдетте, сынып құрылымның кеңейтімі болып табылады, сондықтан құрылымдардың кейбір салыстырмалы шектеулері бар. Мысалы, құрылымдарды C++ тіліндегі сыныптармен бірдей деп санауға болады, бірақ мүшелер сыныптарда әдепкі бойынша жалпыға ортақ емес (құрылымдардағыдай емес). Бұл шын мәнінде C++ тіліндегі сәйкес қатынас модификаторларын пайдалана отырып, дәл осындай сипаттамаларға ие класс пен құрылымды анықтауға болатындығын білдіреді. Алайда С тілінде құрылымдарда ешқандай функциялар немесе шамадан тыс жүктелген операциялар болуы мүмкін емес. C++ тілінде сынып пен құрылымды анықтау үшін class және struct кілт сөздері қолданылады. NET тілдеріне келетін болсақ (C, VB. NET, т.б.) класс анықтамалық тип, ал құрылым мән түрі болып табылады. Әдетте, құрылымдар кішірек нысандар үшін пайдаланылады, бірақ сыныптар жадта ұзақ уақыт сақталатын үлкенірек нысандар үшін пайдаланылады.

Ұсынылған: