Бир нече жана көп деңгээлдүү мурастын ортосундагы айырма

Мазмуну:

Бир нече жана көп деңгээлдүү мурастын ортосундагы айырма
Бир нече жана көп деңгээлдүү мурастын ортосундагы айырма

Video: Бир нече жана көп деңгээлдүү мурастын ортосундагы айырма

Video: Бир нече жана көп деңгээлдүү мурастын ортосундагы айырма
Video: 3-стратегия."Коп денгээлдуу тапшырмалар" стратегиясы 2024, Ноябрь
Anonim

Негизги айырма – Көп жана көп деңгээлдүү мурас

Объектке багытталган программалоо (OOP) класстарды жана методдорду колдонуу менен программаны долбоорлоонун парадигмасы. Чыныгы дүйнөнүн сценарийлерин объектилерге түшүрсө болот. Ошондуктан, программалык чечимдерди куруу оңой. Класс - бул объектти куруунун планы. Ал касиеттерин жана ыкмаларын камтыйт. Мисалы, окуучу объектин түзүүдөн мурун, касиеттери жана ыкмалары бар класстын окуучусу болушу керек. Студенттин студенттин id, аты жана окуу, жазуу, изилдөө сыяктуу ыкмалары сыяктуу касиеттери болушу мүмкүн. Методдор жүрүм-турумду сүрөттөйт, ал эми касиеттери атрибуттар болуп саналат. Класс түзүлгөндөн кийин, аларды колдонуу менен объекттерди түзүүгө болот. Объект түзүү, ошондой эле Объекттин инстанциясы деп аталат. Объект өзүнчө жок. Алар башка объекттер менен байланышат жана маалыматтар объекттердин ичинде өткөрүлөт. OOP бир мамы Мурас болуп саналат. Мурастын максаты - кодду кайра колдонуу мүмкүнчүлүгүн жогорулатуу. Ал буга чейин бар класстын касиеттеринин жана ыкмаларынын жаңы классын түзөт. Учурдагы класс базалык класс, ал эми жаңы класс туунду класс деп аталат. Бир нече тукум куучулук жана көп баскычтуу мурас - мурастын түрлөрү. Бул макалада алардын ортосундагы айырма талкууланат. Көп деңгээлдүү мурастын негизги айырмасы, бир нече баскычтуу тукум куучулук класстын көптөгөн базалык класстарды мурастоосу, ал эми көп баскычтуу мурастоо класстын туунду класстан мурастоосу, ал классты жаңы класс үчүн базалык класс кылуусу.

Бир нече тукум куучулук деген эмне?

Бир нече тукум куучулук - бул класс бирден ашык базалык классты мурастаса.

Көп жана көп баскычтуу тукум куучулуктун ортосундагы айырма
Көп жана көп баскычтуу тукум куучулуктун ортосундагы айырма

01-сүрөт: Көптөгөн мурас

A B жана C класстары. А жана В базалык класстар, ал эми С туунду класс. С классы А жана В базалык класстарынын тең көз карандылыгын башкаруусу керек. Бир нече мурастар программалык камсыздоо долбоорлорунда кеңири колдонулбайт. Бул системаны татаалдантат, анткени бир класс көп класстарды мурастап жатат.

Мисалы, А жана В класстарынын экөөнүн тең аталышы sum() болгон методу бар жана С классы эки классты тең чыгарат деп ойлойлу. С тибиндеги объектти түзүп, сумма () ыкмасын чакыргандан кийин, ал катага алып келиши мүмкүн, анткени эки класс тең бирдей методго ээ. Компилятор кайсы функцияны чакырарын билбейт. Ошондуктан, бир нече тукум куучулук системанын татаалдыгын жогорулатат. Бир нече мурас C++ тилинде колдоого алынат, бирок Java, C сыяктуу тилдер Бир нече мурасты колдобойт. Анын ордуна, бул тилдер класска окшош интерфейсти колдонушат, бирок аны түзүү мүмкүн эмес.

Көп деңгээлдүү мурас деген эмне?

Көп деңгээлдүү мурас – бул класстын туунду класстан мурастоосу, ал классты жаңы класс үчүн базалык класс кылуу.

Көп жана көп баскычтуу мурастын ортосундагы негизги айырма
Көп жана көп баскычтуу мурастын ортосундагы негизги айырма

02-сүрөт: Көп деңгээлдүү мурас

Көп деңгээлдүү мурастын үч деңгээли бар. B классы А классынан жана С классы В классынан мурастай турган орто класс. A B классы үчүн базалык класс жана В С үчүн базалык класс.

Көп деңгээлдүү мурасты ишке ашыруучу программа төмөнкүдөй. Программа Java аркылуу жазылган.

Көп жана көп деңгээлдүү мурастын ортосундагы айырма_сүрөт 03
Көп жана көп деңгээлдүү мурастын ортосундагы айырма_сүрөт 03

03-сүрөт: Көп деңгээлдүү мурасты ишке ашырган программа

Жогорудагы программага ылайык, А классы В классы үчүн базалык класс. В классы С классы үчүн базалык класс. А классынын бардык касиеттери жана ыкмалары В классы тарабынан жеткиликтүү. Класстын бардык касиеттери жана ыкмалары В классы боюнча жеткиликтүү. Демек, С классы А жана В экөөнүн тең касиеттерине жана ыкмаларына кире алат. С тибиндеги объектти түзүүдө А (), В () жана С () үч ыкмасын тең чакырса болот. Чыгуу A, B, C берет.

Бир нече жана көп деңгээлдүү тукум куучулуктун кандай окшоштугу бар?

Экөө тең мурастын түрү

Бир нече жана көп деңгээлдүү мурастын ортосунда кандай айырма бар?

Бир нече мураска каршы көп деңгээлдүү мурас

Бир нече тукум куучулук – класс бирден ашык базалык класстан мурасталуучу Мурастын түрү. Көп деңгээлдүү Мурас - бул туунду класстан мурасталып, ал туунду классты жаңы класс үчүн базалык класс кылган Мурастын түрү.
Колдонуу
Бир нече тукум куучулук кеңири колдонулбайт, анткени ал системаны татаалыраак кылат. Көп деңгээлдүү мурас кеңири колдонулат.
Класстын деңгээли
Бир нече тукум куучулуктун эки класс деңгээли бар, атап айтканда, базалык класс жана туунду класс. Көп деңгээлдүү мурастын үч класс деңгээли бар, атап айтканда, базалык класс, орто класс жана туунду класс.

Корытынды – Көп жана көп деңгээлдүү мурас

Мурас - объектке багытталган программалоонун негизги тиреги. Мурастын ар кандай түрлөрү бар; Алар бир деңгээлдеги мурас, көп деңгээлдүү мурас, көп мурас, иерархиялык мурас жана гибриддик мурас. Бир деңгээлдеги мурастын бир базалык классы жана бир туунду классы бар. Иерархиялык мурастын бир базалык классы жана көптөгөн туунду класстары бар. Гибриддик мурас - бул көп деңгээлдүү жана көп мурастын айкалышы. Бул макалада бир нече мурас жана көп баскычтуу мурас ортосундагы айырма сүрөттөлгөн. Көп деңгээлдүү мурастын айырмасы: Көп баскычтуу тукум куучулук - бул класс көптөгөн базалык класстардан, ал эми көп баскычтуу мурас - бул класс туунду класстан мурастап, ал туунду классты жаңы класс үчүн базалык класска айландырганда. Көп деңгээлдүү мурастар Бир нече мураска караганда кеңири колдонулат.

PDF бир нече жана көп деңгээлдүү мурасты жүктөп алыңыз

Сиз бул макаланын PDF версиясын жүктөп алып, шилтеме эскертүүсүнө ылайык оффлайн максаттарында колдоно аласыз. Сураныч, PDF версиясын бул жерден жүктөп алыңыз Көп жана көп деңгээлдүү мурастын ортосундагы айырма

Сунушталууда: