Hvad er beskyttet arv?
Computervidenskabsområdet bruger programmering til at skabe løsninger på problemer. C ++ er et programmeringssprog, der bruges i datalogi, der bruger objektorientering til at modellere den virkelige verden. I objektorienteret programmering oprettes klasser til at skabe en ramme for objektmodeller, der bruges under kørsel af et program. Klasser oprettes ofte i et struktureret hierarki, hvor mere generaliserede forældreklasser oprettes først og derefter bruges som grundlag for mere specifikt detaljerede børneklasser. Beskyttet arv tillader, at efterkommerklasser har fuld og direkte adgang til de foregående medlemselementer, der implicit erves i efterkommerklasser.
En af de største fordele ved objektorientering er, at når en struktur eller klasse oprettes, kan man skjule dataene og funktionaliteten af klassen for andre programmeringsstrukturer og -funktioner, hvis adgang ikke er nødvendig. I C ++ opnås dette ved hjælp af adgangsmodifikatorer. Hvis en programmør ønsker at nægte adgang til de interne oplysninger og funktioner i en klasse uden for klassen, bruges nøgleordet "privat" - men adgang til mellem klasser mellem medlemmer i klassen er altid tilladt. For at begrænse adgangen kun til afkomklasser som i beskyttet arv bruges nøgleordet "beskyttet". Nøgleordet "offentligt" giver fuld adgang til medlemsvariabler og -funktioner.
Arv i software har fordelen ved at tillade, at programmeringskode, der allerede er oprettet, kan genbruges indirekte. Når der oprettes en barneklasse, bliver alle medlemmernes variabler og funktioner i forgængerklasserne automatisk en del af barnet. Programmereren behøver ikke at kode dem igen. Dette er en stor fordel, når der er behov for store hierarkier af klasser. Et eksempel på dette kan være, når enheder i en biologisk taxonomimodel skal replikeres i software.
Privat arv sker, når forgængerklasser har udpeget deres medlemselementer som private. Børn, der implicit modtager disse variabler og funktioner, har ikke direkte, øjeblikkelig adgang til dem, hvilket bevarer visse funktioner hos forælderen og barnet. Når en forælder erklærer et element som beskyttet med beskyttet arv, arver man variabler eller funktioner, og barnet kan få adgang til dem, men andre klasser kan ikke. Offentlig arv giver barnet mulighed for at integrere og manipulere forældrefunktioner. Det giver også andre strukturer adgang til børnemedlemmerne.
Beskyttet arv er et vigtigt koncept i C ++ programmering. Det hjælper med at definere de begrænsninger, som et program skal fungere under. Kortfattede skriftlige og veludviklede programmer, der bruger arv, hjælper med at reducere applikationsfejl, hjælper med fejlfinding og giver kontrolleret fleksibilitet til de standardobjektorienterede principper for skjul af information og indkapsling.