Encapsulation and Information Hiding
The users of a class and its objects are called its clients.
The author of a class is called its implementor.
Information hiding principle. Implementors hide implementation details inside a class definition so clients can�t see them. In particular, they make all fields private.
The methods of a class provide services to clients. The interface of a class is the contract in which the implementor commits to deliver certain services to the clients.
Implementors are free to change the implementation of a class provided the interface doesn�t change, i.e. provided the can�t see any change in services.