This week's book giveaway is in the Servlets forum.
We're giving away four copies of Murach's Java Servlets and JSP and have Joel Murach on-line!
See this thread for details.
The moose likes Architect Certification (SCEA/OCMJEA) and the fly likes Polymorphysm Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Certification » Architect Certification (SCEA/OCMJEA)
Bookmark "Polymorphysm" Watch "Polymorphysm" New topic
Author

Polymorphysm

Rajan Choudhary
Ranch Hand

Joined: Mar 17, 2011
Posts: 196
Which of the following class inheritance scenarios describes polymorphism in Java?
1 one class inherits from multiple parent classes
2 one class implementing many interfaces
3 multiple classes implementing one interface
4 multiple classes inherit from single abstract parent class

I saw different answers in different places. Is anybody 100% about the answers?
Rajan Choudhary
Ranch Hand

Joined: Mar 17, 2011
Posts: 196
I feel, 3 & 4 should be the correct ones but somehow I remember I saw 1 & 2 correct ones...
Matthew Brown
Bartender

Joined: Apr 06, 2010
Posts: 4339
    
    7

Well, 1's not even possible in Java, so you can rule that out.

Edit: unless they mean an inheritance chain, I suppose.

I'd agree, 3 and 4 are the best fit. Polymorphism is about treating objects as if they are of a common class, and they behave appropriately according to which subclass they are an instance of. You could make a case that polymorphism can happen whenever you have inheritance, but 3 and 4 are a better example for demonstrating it.
Rajan Choudhary
Ranch Hand

Joined: Mar 17, 2011
Posts: 196
Yes, I too thought about chained inheritance. You and I are in favor of 3 & 4. I would go by that unless someone comes up with good clarification. Thanks for your comments.
Claudiu Dumitrescu
Greenhorn

Joined: Sep 09, 2008
Posts: 29
I would say the best answer that applies here is 3.
Inheriting from an abstract class does not guarantee that a method can change or will change its behavior in subclasses
Yegor Bugayenko
Ranch Hand

Joined: Feb 11, 2011
Posts: 64
POLY-morphism means that two classes have the same interface, but different behavior. Thus, options 1 and 2 are out.

Option 4 says nothing about common interface of these multiple classes. "Abstract class" doesn't mean that it has any methods in it.

Thus, the only option is 3.


follow me at yegor256.com
 
Don't get me started about those stupid light bulbs.
 
subject: Polymorphysm
 
Similar Threads
Anonymous class behavior confusion !
Diff between Thread and Runnable
inheritence
parent class for Java.util.Map
How can multiple inheritance solve the problem of Deadly Diamond of Death