This page contains an archived post to the Design Forum (formerly called the Flexible Java Forum) made prior to February 25, 2002.
If you wish to participate in discussions, please visit the new
Employee is-a person
Posted by Dave Andrews on 29 Oct 1998, 7:40 AM
I received a personal reply to my earlier post requesting the exact reference, so for the benefit of any others....
Object-Oriented Analysis and Design with Applications
Benjamin/Cummings, 1994. 490 pp.
The exact quote is on page 38:
Programming without inheritance is not OO, it is programming with abstract data types.
You may be interested to know that I'm not sure whether or not I agree with that statement.
Part of the reason for including it was to see if it would stimulate some debate. (Heh! Heh!)
Inheritance is always mentioned as one of the core pillars of OO, but in practice seems to be one of the things that causes the most problems. I have seen some truly tortured inheritance hierarchies in my time.
I am personally allergic to inheritance trees more than about 3 levels deep.
Since Java is meant to be a 'pure' OO language, I thought it was an interesting point of debate.