Skip to main content

Hva er en abstrakt klasse?

I objektorientert programmering gir en abstrakt klasse en baseklasse som kan brukes til å gi andre klasser delvis implementering og grensesnitt.De er ufullstendige av seg selv og brukes i arvesituasjoner i mange programmeringsspråk som Java, C ++ og C#.Bruken deres som baseklasse betyr at de ofte blir referert til som en abstrakt baseklasse (ABC).

En integrert del av objektorientert programmering, fjerner data-abstraksjon de unødvendige detaljene til et objekt.I hovedsak koker det objektet ned til dets viktigste identifiserende egenskaper.Disse grunnleggende egenskapene gir en blåkopi som kan brukes til å lage andre objekter med de samme egenskapene, bare forskjellige i detaljene.

Denne planen er definert som en klasse.Klasser brukes til å innkapsle koden, noe som gjør det enklere for programmereren, fordi han kan referere til spesifikke felles rutiner i stedet for å skrive rutinene om og om igjen.Programmerere lager barneobjekter fra klasser, og disse objektene arver funksjonene og metodene i foreldreklassen.

Formålet med en abstrakt klasse skal være rammen som andre klasser er bygget på.Objekter kan ikke opprettes direkte fra en abstrakt klasse, bare fra underklassene som tilhører den abstrakte klassen.For at et objekt skal arve fra en abstrakt klasse, må det opprettes en underklasse.Abstrakte metoder er subroutines i en abstrakt klasse som ikke inneholder noen implementering.Disse underrutinene brukes som plassholdere som skal overskrives av en underklasse eller et objekt designet basert på klassen som inneholder selve abstrakte metoden.

Det er forskjellige metoder for å lage en abstrakt klasse.I C ++ opprettes for eksempel en abstrakt klasse ved å utvikle en klasse med minst en abstrakt metode eller ren virtuell funksjon.Java bruker et nøkkelord, "abstrakt" for å betegne en abstrakt klasse.De er imidlertid ikke definert i programmeringsspråk som ikke støtter ideen om arv.

Arv er prosessen med å lage nye objekter fra klasser der de nye objektene kan bruke funksjonene og metodene definert i foreldreklassene uten behov for å trengegjenta programmet.Dette er grunnen til at en abstrakt klasse er nyttig.Barneklasser og barnegjenstander fra underklassene arver egenskaper fra foreldres abstrakt klasse.Abstrakte klasser regnes som superklasser og er øverst i klassestrukturens hierarki, så de har ikke noe poeng på et språk som ikke støtter arv.