Forskjellen Mellom Innkapsling Og Abstraksjon

Forskjellen Mellom Innkapsling Og Abstraksjon
Forskjellen Mellom Innkapsling Og Abstraksjon

Video: Forskjellen Mellom Innkapsling Og Abstraksjon

Video: Forskjellen Mellom Innkapsling Og Abstraksjon
Video: Магистерская диссертация в научной статье Димаша (SUB) 2024, November
Anonim

Innkapsling vs abstraksjon

Innkapsling og abstraksjon er to forskjellige, men beslektede begreper som finnes i OOP (Object Oriented Programming) språk. Innkapsling er konseptet med å kombinere data og atferd sammen som en enkelt enhet. På den annen side er Abstraksjon prosessen med å presentere hvordan en enhet oppfører seg / ser ut i motsetning til hvordan den implementeres.

Hva er innkapsling?

Innkapsling er prosessen med å pakke inn data og drift som opererer dem til en enkelt enhet. Dette betyr i hovedsak at for å få tilgang til data, bør visse forhåndsdefinerte metoder brukes. Innkapslede data er med andre ord ikke direkte tilgjengelige. Dette sørger for at dataintegriteten bevares fordi brukeren ikke kan få direkte tilgang til og endre dataene slik han / hun ønsker. Brukerne får eller angir dataverdiene bare gjennom metodene som er offentlig tilgjengelige for brukerne. Disse metodene gir vanligvis datavalidering slik at bare dataene i riktig format får lov til å bli satt inn i feltene. Derfor er fordelene med innkapsling tredoblet. Gjennom innkapsling kan programmereren lage felt i en klasse skrivebeskyttet eller bare skrive. For det andre,en klasse kan ha total kontroll over hva som er lagret i feltene. Til slutt trenger ikke brukerne av en klasse å bekymre seg for hvordan dataene lagres. I Java kan programmereren erklære at alle forekomstvariabler er private og tilby get and set-metoder (som er offentlige) for å få tilgang til og endre de private feltene.

Hva er abstraksjon?

Abstraksjon er prosessen med å skille presentasjonsdetaljene fra implementeringsdetaljene. Dette gjøres slik at utvikleren blir lettet over de mer komplekse implementeringsdetaljene. I stedet kan programmereren fokusere på presentasjonen eller atferdsdetaljene til enheten. Enkelt sagt fokuserer abstraksjon på hvordan en bestemt enhet kan brukes i stedet for hvordan den implementeres. Abstraksjon skjuler i hovedsak implementeringsdetaljene, slik at selv om implementeringsmetodikken endres over tid, ikke programmerer trenger å bekymre seg for hvordan det vil påvirke programmet hans. Et system kan abstraheres i flere lag eller nivåer. For eksempel vil abstraksjonslag på lavt nivå avsløre maskinvaredetaljer, mens abstraksjon på høyt nivå bare vil avsløre enhetens forretningslogikk. Begrepet abstraksjon kan brukes til å referere til både en enhet og en prosess, og dette fører til forvirring. Som en prosess betyr abstraksjon å trekke ut viktige detaljer mens man ignorerer de uvesentlige detaljene til et element eller en gruppe av ting, mens som en enhet betyr abstraksjon en modell eller et syn på en enhet med bare de essensielle detaljene. I Java kan programmereren bruke nøkkelordet abstrakt for å erklære en klasse som en abstrakt enhet, som representerer de essensielle definisjonene som kjennetegner en virkelig verdensenhet.programmereren kan bruke nøkkelordet abstrakt for å erklære en klasse som en abstrakt enhet, som representerer de essensielle definisjonene som kjennetegner en virkelig verdensenhet.programmereren kan bruke nøkkelordet abstrakt for å erklære en klasse som en abstrakt enhet, som representerer de essensielle definisjonene som kjennetegner en virkelig verden.

Hva er forskjellen mellom innkapsling og abstraksjon?

Selv om innkapsling og abstraksjon er svært beslektede begreper som finnes i objektorienterte programmeringsspråk, har de viktige forskjeller. Abstraksjon er en teknikk som hjelper oss med å identifisere hva som skal være synlig og hva som skal skjules. Innkapsling er teknikkene for å pakke informasjonen slik at den synliggjør det som skal være synlig og skjuler det som skal skjules. Med andre ord kan innkapsling identifiseres som et skritt utover abstraksjon. Mens abstraksjon reduserer et objekt fra den virkelige verden til dets essensielle definerende egenskaper, utvider innkapsling denne ideen ved å modellere og knytte denne funksjonaliteten til den enheten.

Anbefalt: