Zoeken…
Informatie verbergen
De status van een object op een bepaald moment wordt weergegeven door de informatie die het op dat moment bevat. In een OO-taal wordt de status geïmplementeerd als lidvariabelen.
In een goed ontworpen object kan de status alleen worden gewijzigd door middel van aanroepen van de methoden en niet door directe manipulatie van de lidvariabelen. Dit wordt bereikt door het aanbieden van openbare methoden die werken op de waarden van variabelen van particuliere leden. Het op deze manier verbergen van informatie staat bekend als inkapseling .
Daarom zorgt inkapseling ervoor dat privé-informatie niet wordt blootgesteld en niet kan worden gewijzigd, behalve door respectievelijk oproepen naar accessors en methoden.
In het volgende voorbeeld kunt u niet instellen dat een Animal niet langer honger heeft door het hungry privéveld te wijzigen; in plaats daarvan moet je de methode eat() aanroepen, die de toestand van het Animal door de hungry vlag op false .
public class Animal {
private boolean hungry;
public boolean isHungry() {
return this.hungry;
}
public void eat() {
this.hungry = false;
}
}