Win a copy of The Java Performance Companion this week in the Performance forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

looking at this code, why Planet class is not a Star class?

 
sura watthana
Ranch Hand
Posts: 77
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
looking at the code below, why does the explanation of the code say
"The use of inheritance in this code is not justifiable since, conceptually, a planet is-not-a star. "? but the class Planet extends class Star?
Thanks for your help.


[ September 14, 2004: Message edited by: Barry Gaunt ]
 
fred rosenberger
lowercase baba
Bartender
Posts: 12146
30
Chrome Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You are correct that in the code, planet does indeed extend star. but what they are saying is "this is bad - don't do this".

in the "real world", there is no way you could consider a planet to be a star. You would never say "the earth IS-A star" or "Jupiter IS-A star". So this code is not good OO practice. You can't justify doing this.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic