This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
I would like to know if there are any standard articles for the various principles of OOP - abstraction in particular. I have referred wikipedia and oracle but are there any standard articles like we have for Strings,Over riding etc. I am familiar with the basic concepts of Encapsulation, Polymorphism and Inheritance having prepared for SCJP.
While I can answer code related questions on Inheritance,Polymorphism and Encapsulation I find that I am not able to explain abstraction satisfactorily/comprehensively.
Abstraction( in my own words) is exposing only some attributes and behaviour relevant for a particular purpose and hiding all other details to reduce complexity. This looks like an explanation of how we define a class(with high cohesion and low coupling).
Encapsulation is an implementation of Abstraction. Abstract classes and Interfaces are other implementations. Are there other possible implementations? Are there different layers of abstraction in Java?
I dont think Oracle tutorials give explanation about Abstraction. I am looking for a consolidated article with Java related concepts..