File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Java in General and the fly likes Regarding Polymorphism Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Java in General
Bookmark "Regarding Polymorphism" Watch "Regarding Polymorphism" New topic

Regarding Polymorphism

Rick Charles

Joined: Jul 27, 2006
Posts: 25
How would you explain Compile time and Runtime polymorphism? And also can someone explain me about dynamic dispatch?
[ April 11, 2007: Message edited by: Rick Charles ]
Jan Cumps

Joined: Dec 20, 2006
Posts: 2565

Definition of Richard G. Baldwin (His Introductory Java Programming Tutorial will get you started):
compile-time polymorphism: method overloading
runtime polymorphism: method overriding and inheritance

Dynamic dispatch is explained in wikipedia.

Regards, Jan
[ April 11, 2007: Message edited by: Jan Cumps ]

OCUP UML fundamental and ITIL foundation
Campbell Ritchie

Joined: Oct 13, 2005
Posts: 46337
Sounds more like a beginner's question to me.

I thought polymorphism was only seen at runtime. You will find lots of examples. Imagine you have a superclass, and you have subclasses; they can have methods which have the same signature (overridden) which use different operations. Example:-At compile time all the compiler will notice is that each of these three concrete classes extends Shape, and has a getArea() method. Also that the return types are compatible (in this case all the same, double).
Now, at runtime, you can create different subclasses of Shape:Your compiler can't tell whether you will enter 1 for Circle or 2 for Square or 3 for Triangle. But each has a getArea() method which the JVM finds and uses at Runtime.

try it
I agree. Here's the link:
subject: Regarding Polymorphism
It's not a secret anymore!