Purity

Java is not a pure Object oriented language, but so called a “Hybrid” language. For any language to be pure object oriented it must follow these 6 points strictly… 1) It must have full support for Encapsulation and Abstraction 2) It must support Inheritance 3) It must support Polymorphism 4) All predefined types must be Objects 5) All user defined types must be Objects 6) Lastly, all operations performed on objects must be only through methods exposed at the objects.

Now, java supports 1, 2, 3 & 5 but fails to support 4 & 6.

http://www.geeksforgeeks.org/java-not-purely-object-oriented-language/ TODO