what is dynamic method dispatch ?
Answer Posted / j mathew
class A{
void hallo(){
System.out.println(" hallo of A");
}
}
class B extends A {
void hallo(){ // method overridden.
System.out.println("hallo of B");
}
}
class C extends B {
void hallo(){ // method overridden
System.out.println("hallo of C");
}
}
class Demo {
public static void main(String[] args) {
A a = new A(); // create object of A
B b = new B(); // create object of B
C c = new C(); // create object of C
A r; // create a reference of super class
r=a; // assign object of A to the reference var. r
r.hallo(); // it calls hallo() of class A
r=b; // super class variable can reference a
sub class object.
r.hallo(); // it calls hallo() of class B
r =c; // super class variable can ref. sub
class object.
r.hallo(); // it calls hallo() of class C
}
}
this is how dynamic dispath method works.
overridden methods are resolved at run time rather than
compile time. At compile time it doesn't know which over-
ridden method will be called.
it comes to know at run time, thats why it is called as run
time polymorphism.
| Is This Answer Correct ? | 6 Yes | 3 No |
Post New Answer View All Answers
Is java se free?
What are different ways of object creation in java ?
What is lambda expression in java?
Which is bigger float or double?
What are use cases?
Is there any tag in htm to upload and download files?
Does java set allow duplicates?
what is nested class in java?
Explain about anonymous inner classes ?
Can you declare an interface method static?
What is bytecode verifier?
What is a java predicate?
What does compareto () do in java?
Is it possible to specify multiple jndi names when deploying an ejb?
Why deletion in linkedlist is fast than arraylist?