Encapsulation er et programvaredesignprinsipp som sier at tilgang til objekter skal være uavhengig av hvordan de brukes. Dette lar deg lage objekter som kan brukes uavhengig av hvordan de ble opprettet. I en programmeringssammenheng kan innkapsling betraktes som en måte å skjule implementeringsdetaljene til et objekt for brukerne.
Innkapsling i programmering betyr å dele alle egenskapene og metodene til ett objekt med et annet objekt, og skape et objekt som har egenskaper og atferd som er forskjellig fra disse objektene. Dette prinsippet oppfordrer objekter til å være uavhengige moduler, og kombinerer data og behandlingsprosedyrer som kun opererer innenfor objektskallet.
Eksempel
Som et eksempel, la oss vurdere dette scenariet: du har en klasse `Computer` med attributter og metoder som egenskapene til prosessoren (`processorPower`), RAM (`ramCapacity`), harddisk (`hardDriveSize`), etc. Du kan også ha andre klasser som `