Encapsulation Principle
In plain terms
Hiding internal state and exposing only what's necessary.
Going deeper
Encapsulation bundles data with its methods and restricts direct access to internals, protecting invariants and enabling change. It hides how, exposes what.
Under the hood
Access modifiers enforce it; well-encapsulated code can change internals without breaking callers.
Examples
Private fields, getters/setters, information hiding, OOP, data protection.
Think of it like...
Like a sealed appliance you operate via buttons, never by rewiring its insides.