Many languages claim to be Object-Oriented. While the
exact definition of the term is highly variable
depending upon who you ask, there are several
qualities that most will agree an Object-Oriented
language should have:
1. Encapsulation/Information Hiding
2. Inheritance
3. Polymorphism/Dynamic Binding
4. All pre-defined types are Objects
5. All operations performed by sending messages to
Objects
6. All user-defined types are Objects
Fair enough...
Java IS by virtue of 1, 2, 3, and 6.
Java IS NOT by virtue of 4 and 5 (not all pre-defined types are Objects, and not all operations are performed by sending messages to Objects).
But since the definition says only that an OOPL should have these things, then Java qualifies.
Next up; given that definition, how would one define "100%"? Exhibiting all those qualities? If that's the case, Java fails the "purity test".
331 views
Usually answered in minutes!
×