Abstraktion i objektorienterad programmering är användningen av endast de egenskaper hos ett objekt som representerar det med tillräcklig noggrannhet i ett givet system. Huvudtanken är att representera ett objekt med ett minimum av fält och metoder och samtidigt med tillräcklig noggrannhet för det problem som ska lösas.
Det är ett viktigt OOP- verktyg tillsammans med polymorfism , arv och inkapsling .
Abstraktion är grunden för objektorienterad programmering och låter dig arbeta med objekt utan att gå in på detaljerna i deras implementering.
Dataabstraktion är ett av de äldsta begreppen inom objektorienterad programmering, före det. Dataabstraktion associerar en underliggande datatyp med en uppsättning operationer på den (se även abstrakt datatyp ). Användaren av en datatyp har inte direkt tillgång till dess implementering, men kan arbeta med datan genom en tillhandahållen uppsättning operationer. Fördelen med dataabstraktion är separeringen av operationer på data från den interna representationen av dessa data, vilket gör att implementeringen kan ändras utan att det påverkar användarna av datatypen. [ett]
En sådan uppdelning kan uttryckas genom ett speciellt " gränssnitt ", som koncentrerar beskrivningen av alla möjliga tillämpningar av programmet [2] .