L'information hiding, o incapsulamento, è un principio base facente parte della OOP.
Ogni oggetto, per motivi di sicurezza del software e per facilitare la risoluzione di errori, necessita della protezione dei dati a un livello più "interno" e meno "esposto", a questo viene incontro l'information hiding.
L'incapsulamento agisce da "separatore" tra l'interfaccia, che risulta visibile all'utente, e l'implementazione interna dell'oggetto stesso, che è resa protetta. In questo modo i dati presenti all'interno possono venire modificati solo da funzioni interne allo stesso oggetto, e non da oggetti esterni.