wood burning stoves 2.0
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
JavaRanch » Java Forums » Certification » Architect Certification (SCEA/OCMJEA)
Bookmark "Polymorphysm" Watch "Polymorphysm" New topic


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

Joined: Apr 06, 2010
Posts: 4543

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

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: 79
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.

SCEA, PMP, read my blog: www.yegor256.com
I agree. Here's the link: http://aspose.com/file-tools
subject: Polymorphysm
It's not a secret anymore!