Клас пен интерфейс арасындағы айырмашылық

Мазмұны:

Клас пен интерфейс арасындағы айырмашылық
Клас пен интерфейс арасындағы айырмашылық

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

Бейне: Клас пен интерфейс арасындағы айырмашылық
Бейне: Нейрондардың түрлері мен қызметі синапс пен медиатор. 9 сынып. 2024, Маусым
Anonim

Негізгі айырмашылық – сынып пен интерфейс

Объектіге бағытталған бағдарламалау (OOP) бағдарламалық жасақтаманы әзірлеудегі кең таралған парадигма болып табылады. Бұл сыныптар мен нысандарды пайдаланып бағдарламалауға нақты сценарийлерді жеткізуге көмектеседі. Класс - объект құруға арналған сызба. Бағдарламашы қасиеттері мен әдістері бар класс жасай алады. Оқушы мен мұғалім объект болып табылады. Объектіні жасау даналық деп аталады. OOP сонымен қатар интерфейстерді пайдаланады. Интерфейстер мен класс ұқсас болып көрінуі мүмкін, бірақ олардың айырмашылығы бар. Бұл мақалада сынып пен интерфейс арасындағы айырмашылық талқыланады. Класс пен интерфейс арасындағы негізгі айырмашылық мынада: сынып нысанды жасау үшін сызба болып табылатын сілтеме түрі, ал интерфейс нысанды жасау үшін пайдаланылмайтын сілтеме түрі болып табылады.

Сынып дегеніміз не?

OOP-те бәрі объект ретінде қарастырылады. Класссыз объект құру мүмкін емес. Класс - объект құруға арналған сызба. Үй салу кезінде сәулетші жоспарды сызады. Жоспар сыныпқа ұқсас. Үй нысанға ұқсас. Класс - бұл объектіні құру жоспары. Нысан дегеніміз сыныпты пайдаланып жасалған нәрсе.

Класта сипаттар мен әдістер бар. Студенттің аты, бағасы, индекс нөмірі сияқты қасиеттері болуы мүмкін. Оқушыда оқу, жүру, оқу сияқты әдістер болуы мүмкін. Класс қажетті сипаттар мен әдістермен жасалған.

Көптеген бағдарламалау тілдерінде сынып құру синтаксисі келесідей. Ол класс кілт сөзі арқылы жасалған.

сыныптың_атауы {

// сипаттар

//әдістер

}

C және Java сияқты бағдарламалау тілдері сыныпты пайдаланып нысан жасау үшін ұқсас синтаксисті ұстанады. Сынып атауы студент деп есептейік.

Студент s1=жаңа студент ();

Бұл s1 - нысан. «Жаңа» кілт сөзі сипаттар үшін жадты бөлу үшін пайдаланылады. Сондай-ақ сыныпта сипаттарды немесе айнымалы мәндерді инициализациялау үшін конструктор бар.

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

Интерфейс дегеніміз не?

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

Екі абстрактілі сынып болған кезде, сол сыныптарда жарияланған әдістерді енгізу керек. Бұл әдістерді енгізу үшін жаңа класс пайдаланылады. Егер екі сыныпта да бірдей әдіс болса, бұл түсініксіздік мәселесін тудыруы мүмкін. Сондықтан Java және C сияқты бағдарламалау тілдерінің интерфейсі бар.

Интерфейстер тек әдістердің мәлімдемесін қамтиды. Іске асыру әдісі жоқ. Сондай-ақ, интерфейстерді нысандарды жасау үшін пайдалану мүмкін емес. Олар бірнеше мұраға қолдау көрсету және кодты қорғау үшін пайдаланылады.

Интерфейс синтаксисі келесідей. Интерфейс "interface" кілт сөзін пайдаланады.

интерфейс интерфейсінің_аты{

түр әдісі1(параметрлер_тізімі);

түр әдісі2(параметрлер_тізімі);

}

Жоғарыда айтылғандай, интерфейстерде тек мәлімдеме бар. Анықтамасы жоқ. Сонымен, интерфейстер нысандарды жасай алмайды. Ол интерфейстің не екендігі туралы дерексіз көрініс береді. Интерфейсте жарияланған әдістерді бір немесе бірнеше кластар жүзеге асыруы мүмкін. Класс интерфейсті жүзеге асыру үшін «implement» кілт сөзін пайдаланады. Төменде Java арқылы жазылған мысалды қараңыз.

Класс пен интерфейстің айырмашылығы
Класс пен интерфейстің айырмашылығы
Класс пен интерфейстің айырмашылығы
Класс пен интерфейстің айырмашылығы

01-сурет: Интерфейстерді пайдаланатын бағдарлама

Жоғарыдағы бағдарламаға сәйкес, A және B интерфейстер болып табылады. А интерфейсінде sum() болып табылатын әдіс мәлімдемесі бар. В интерфейсінде sub() әдіс декларациясы бар. C класы A және B интерфейстерінің екеуін де жүзеге асырады. Сондықтан С сыныбы sum() және sub() әдістерін де анықтайды. С типті объектіні жасағаннан кейін sum() және sub() әдістерінің екеуін де шақыруға болады.

Интерфейс ішінде жарияланған әдістер әрқашан жалпыға ортақ болуы керек, себебі іске асырушы сыныптар оларды анықтайды. Интерфейс басқа интерфейстен де мұра алады.

Клас пен интерфейстің қандай ұқсастықтары бар?

  • Екеуі де сілтеме түрі.
  • Екеуі де объектіге бағытталған бағдарламалауға қатысты.

Клас пен интерфейстің айырмашылығы неде?

Сынып пен интерфейс

Клас - нысан жасау үшін сызба болып табылатын сілтеме түрі. Интерфейс – данасы жасалмайтын сілтеме түрі.
Нысан данасы
Класс нысанды жасау үшін пайдаланылады. Интерфейсті құру мүмкін емес, себебі әдістер ешбір әрекетті орындай алмайды.
Конструктор
Класта айнымалы мәндерді инициализациялау үшін конструктор бар. Интерфейс конструкторды қамтымайды, себебі олар инициализацияланатын айнымалылар емес.
Кілтсөз
Сынып «сынып» кілт сөзін пайдаланады. Интерфейс «интерфейс» кілт сөзін пайдаланады.
Кіру спецификаторы
Сынып мүшелері жеке, жалпы және қорғалған болуы мүмкін. Интерфейс мүшелері әрқашан жалпыға ортақ болуы керек, себебі іске асырушы сыныптар оларды анықтайды.

Қорытынды – сынып пен интерфейс

Сыныптар мен интерфейстер объектіге бағытталған бағдарламалауда кеңінен қолданылады. Класс пен интерфейс арасындағы айырмашылық мынада: сынып нысанды құруға арналған сызба болып табылатын сілтеме түрі және интерфейс нысанды жасау үшін пайдаланылмайтын сілтеме түрі болып табылады. Класс көптеген интерфейстерді жүзеге асыра алады. Бірақ ол тек бір суперклассты кеңейте алады. Интерфейсте көптеген интерфейстерді мұраға ала алады, бірақ іске асыру мүмкін емес. Екеуінің де маңыздылығы бар. Бағдарламашы оларды бағдарламалық жасақтамаға сәйкес пайдалана алады.

PDF класын және интерфейсті жүктеп алу

Сіз осы мақаланың PDF нұсқасын жүктеп алып, сілтеме жазбасына сәйкес офлайн мақсаттарда пайдалана аласыз. PDF нұсқасын осы жерден жүктеп алыңыз Класс пен интерфейс арасындағы айырмашылық

Ұсынылған: