Data abstraction is the result of defining classes with emphasis on the similarities of its objects and ignoring their differences. A good abstraction is one that emphasizes details that are significant to us and suppresses details that are not important. A class is an abstraction.Thus, an abstraction focuses on the outside view of the object and clearly separates its essential behavior from the internal implementation details.
1. Emphasizes similarity of objects and ignore their differences
2. Good abstraction emphasizes significant details and ignores unimportant details
3. Class is abstraction
4. Focuses on outside view of object only

