Dallimi midis klasës abstrakte dhe trashëgimisë

Përmbajtje:

Dallimi midis klasës abstrakte dhe trashëgimisë
Dallimi midis klasës abstrakte dhe trashëgimisë

Video: Dallimi midis klasës abstrakte dhe trashëgimisë

Video: Dallimi midis klasës abstrakte dhe trashëgimisë
Video: VPN (Virtual Private Network) Explained 2024, Nëntor
Anonim

Klasa abstrakte kundër trashëgimisë

Klasa abstrakte dhe trashëgimia janë dy koncepte të rëndësishme të orientuara nga objekti që gjenden në shumë gjuhë programimi të orientuara nga objekti si Java. Klasa abstrakte mund të konsiderohet si një version abstrakt i një klase të rregullt (konkrete), ndërsa Trashëgimia lejon klasat e reja të zgjerojnë klasa të tjera. Klasa abstrakte është një klasë që nuk mund të inicializohet, por mund të zgjerohet. Pra, klasat abstrakte kanë kuptim vetëm nëse gjuha e programimit mbështet trashëgiminë. Në Java, klasat Abstract deklarohen duke përdorur fjalën kyçe Abstract, ndërsa fjala kyçe Extends përdoret për të trashëguar nga një klasë (super).

Çfarë është klasa abstrakte?

Në mënyrë tipike, klasat abstrakte, të njohura gjithashtu si klasat bazë abstrakte (ABC), nuk mund të instantohen (një shembull i asaj klase nuk mund të krijohet). Pra, klasat abstrakte kanë kuptim vetëm nëse gjuha e programimit mbështet trashëgiminë (aftësia për të krijuar nënklasa nga zgjerimi i një klase). Klasat abstrakte zakonisht përfaqësojnë një koncept ose entitet abstrakt me zbatim të pjesshëm ose aspak. Prandaj, klasat abstrakte veprojnë si klasa prind nga të cilat rrjedhin klasat e fëmijëve në mënyrë që klasa e fëmijës të ndajë tiparet jo të plota të klasës prind dhe funksionaliteti mund të shtohet për t'i plotësuar ato.

Klasat abstrakte mund të përmbajnë metoda abstrakte. Nënklasat që zgjerojnë një klasë abstrakte mund të zbatojnë këto metoda abstrakte (të trashëguara). Nëse klasa fëmijë zbaton të gjitha këto metoda Abstrakte, ajo është një klasë konkrete. Por nëse nuk ndodh, klasa e fëmijëve gjithashtu bëhet një klasë Abstrakte. E gjithë kjo do të thotë se, kur programuesi emëron një klasë si Abstrakt, ajo thotë se klasa do të jetë e paplotë dhe do të ketë elementë që duhet të plotësohen nga nënklasat trashëguese. Kjo është një mënyrë e mirë për të krijuar një kontratë midis dy programuesve, e cila thjeshton detyrat në zhvillimin e softuerit. Programuesi, i cili shkruan kodin për të trashëguar, duhet të ndjekë saktësisht përkufizimet e metodës (por sigurisht mund të ketë zbatimin e tij).

Çfarë është trashëgimia?

Trashëgimia është një koncept i orientuar drejt objektit, i cili lejon klasat e reja të zgjerojnë klasa të tjera. Fjala kyçe Extends përdoret për të zbatuar konceptin e trashëgimisë në gjuhën e programimit Java. Trashëgimia në thelb siguron ripërdorimin e kodit duke lejuar zgjerimin e vetive dhe sjelljes së një klase ekzistuese nga një klasë e sapopërcaktuar. Kur një nënklasë e re (ose klasë e prejardhur) zgjeron një super klasë (ose klasë prind) ajo nënklasë do të trashëgojë të gjitha atributet dhe metodat e super klasës. Nënklasa mund të anashkalojë opsionalisht sjelljen (të ofrojë funksione të reja ose të zgjeruara për metodat) të trashëguara nga klasa mëmë. Në mënyrë tipike, një nënklasë nuk mund të zgjerojë super klasa të shumta (p.sh. në Java). Prandaj, nuk mund të përdorni shtrirje për trashëgimi të shumëfishtë. Për të pasur trashëgimi të shumëfishtë, duhet të përdorni ndërfaqe.

Cili është ndryshimi midis klasës abstrakte dhe trashëgimisë?

Klasat abstrakte zakonisht përfaqësojnë një koncept abstrakt ose një entitet me zbatim të pjesshëm ose aspak. Trashëgimia lejon klasat e reja të zgjerojnë klasa të tjera. Për shkak se, klasat abstrakte nuk mund të instantohen, ju duhet të përdorni konceptin e trashëgimisë për të përdorur klasat Abstrakte. Përndryshe, një klasë Abstract nuk ka asnjë përdorim. Klasat abstrakte mund të përmbajnë metoda abstrakte dhe kur klasa zgjerohet, të gjitha metodat (Abstrakte dhe konkrete) trashëgohen. Klasa e trashëguar mund të zbatojë një ose të gjitha metodat. Nëse të gjitha metodat Abstract nuk zbatohen, atëherë ajo klasë bëhet gjithashtu një klasë Abstract. Një klasë nuk mund të trashëgojë nga më shumë se një klasë Abstract (kjo nuk është një cilësi e klasave Abstract në vetvete, por më tepër një kufizim i trashëgimisë).

Postime të ngjashme:

Image
Image
Image
Image

Dallimi midis klasës abstrakte dhe klasës konkrete

Image
Image
Image
Image

Dallimi midis virtuales dhe abstraktit

Image
Image
Image
Image

Dallimi midis klasës abstrakte dhe ndërfaqes

Image
Image
Image
Image

Dallimi midis zbatimeve dhe zgjatjeve

Image
Image
Image
Image

Diferenca midis grafikut dhe pemës

Dorëzuar nën: Programim Etiketuar me: ABC, abstrakte, klasa bazë abstrakte, klasë abstrakte, klasa abstrakte, fjalë kyçe abstrakte, metoda abstrakte, klasë konkrete, zgjeron fjalën kyçe, trashëgimi, klasë trashëgimore, klasë e trashëguar, Java, trashëgimi e shumëfishtë, koncepte të orientuara nga objekti, klasë e rregullt, super klasë

Imazhi
Imazhi

Rreth Autorit: Indika

Indika, BSc. Eng, MSECE Inxhinieri Kompjuterike, PhD. Shkenca Kompjuterike, është Asistent Profesor dhe ka interesa kërkimore në fushat e Bioinformatikës, Biologjisë Kompjuterike dhe Përpunimit të Gjuhëve Natyrore Biomjekësore.

Komente

  1. Imazhi
    Imazhi

    Jason thotë

    30 gusht 2017 në orën 1:25 pasdite

    Faleminderit që shpjegove ndryshimin. Të gjitha pyetjet e mia janë zgjidhur me këtë.

    Përgjigju

  2. Imazhi
    Imazhi

    Aus thotë

    10 maj 2019 në orën 3:04 pasdite

    përgjigjja më e mirë në ueb, Mësuesi nuk shpjegon asgjë dhe nuk ka kuptim, monoton mf. Kështu i shpjegoni konceptet.

    Përgjigju

Lini një përgjigje Anulo përgjigjen

Adresa juaj e emailit nuk do të publikohet. Fushat e kërkuara janë shënuar

Koment

Emri

Email

Uebfaqja

Kërkesë Neni
Kërkesë Neni
Kërkesë Neni
Kërkesë Neni

Postime të veçuara

Dallimi midis simptomave të koronavirusit dhe të ftohtit
Dallimi midis simptomave të koronavirusit dhe të ftohtit

Dallimi midis simptomave të koronavirusit dhe të ftohtit

Dallimi midis Coronavirus dhe SARS
Dallimi midis Coronavirus dhe SARS

Dallimi midis Coronavirus dhe SARS

Dallimi midis Coronavirus dhe Gripit
Dallimi midis Coronavirus dhe Gripit

Dallimi midis Koronavirusit dhe Gripit

Dallimi midis Coronavirus dhe Covid 19
Dallimi midis Coronavirus dhe Covid 19

Dallimi midis Coronavirus dhe Covid 19

Mund t'ju pëlqejë

Dallimi midis Husky siberian dhe Malamute

Diferenca midis llogaritjes AB dhe BC

Recommended: