Inkapseling in programmeren is het combineren van elementen om een nieuwe entiteit te creëren met het doel informatie te verbergen of te beschermen. In objectgeoriënteerd programmeren is inkapseling een kenmerk van objectontwerp. Het betekent dat alle gegevens van het object zich in het object bevinden en verborgen zijn en dat de toegang daartoe beperkt is tot leden van die klasse.
Programmeertalen zijn niet zo strikt en bieden verschillende toegangsniveaus voor de gegevens van een object. C ++ ondersteunt inkapseling en het verbergen van gegevens met door de gebruiker gedefinieerde typen, klassen genoemd. Een klasse combineert gegevens en functie in een enkele eenheid. De methode om details van een klasse te verbergen, wordt abstractie genoemd. Klassen kunnen privé, beschermde en openbare leden bevatten. Hoewel alle items in een klasse standaard privé zijn, kunnen programmeurs de toegangsniveaus indien nodig wijzigen. Drie toegangsniveaus zijn beschikbaar in zowel C ++ als C # en nog eens twee in C #. Zij zijn:
Het belangrijkste voordeel van het gebruik van inkapseling is de beveiliging van de gegevens. Voordelen van inkapseling zijn onder meer:
Voor de beste inkapseling moeten objectgegevens vrijwel altijd worden beperkt tot privé of beschermd. Als u ervoor kiest om het toegangsniveau op openbaar in te stellen, zorg er dan voor dat u de gevolgen van de keuze begrijpt.