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
Which variables are stored in heap?
What happens if we override only equals?
What are the types of literals?
What is parameters example?
Can you explain the final method modifier?
Is 0 an even number?
How many bytes is string in java?
What is files manifesting?
What are the two categories of data types in the java programming language?
how to handle exceptions in ejb?
Why pass by reference is not possible in java?
What is the purpose of object oriented programming?
what is synchronization and why is it important? : Java thread
Does treeset use compareto?
Explain the usage of this with constructors?