Encapsulation
Encapsulation is the mechanism of wrapping data members (instance variables) and methods within a single unit called an object.
This process helps to protect the internal state of an object by hiding the implementation details and providing a public interface for accessing the object's properties and methods.
Encapsulation enables the implementation of the data abstraction principle, where the object's internal state is abstracted from the user, and the user interacts only with the object's public interface.