the user or the external world does not see the internal implementation details. Instead, he only sees the functionality. Abstraction concept is similar to the following example. For example, assume a remote controller. It consists of a set of buttons ...