1.IN CASE OF DYNAMIC METHOD DISPATCH WHY WE USE REFERENCE
VARIABLE,WE CAN USE THE DIFFERENT DEFINED OBJECT DIRECTLY TO
ACCESS THE DATA MEMBER AND MEMBER FUNCTION OF THAT
RESPECTIVE CLASS?WHAT IS THE MAIN FUNCTION OF "REFERENCE
VARIABLE" HERE?
Answers were Sorted based on User's Feedback
Answer / vijay kumar
In case of dynamic method dispatch, It restricts from being used to call methods of other class. You cannot call overriden method which is not declared in reference variable class..
This is the main reason why we use reference variable here in dynamic polymorphism.
Hope i answer this question.
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / shweta kunjadia
It shows Runtime Polymorphism
Eg.
class A {
void callme() {
System.out.println("Inside A's callme method");
}
}
class B extends A {
void callme() {
System.out.println("Inside B's callme method");
}
}
class C extends A {
void callme() {
System.out.println("Inside C's callme method");
}
}
class Dispatch {
public static void main(String args[]) {
A a = new A(); // object of type A
B b = new B(); // object of type B
C c = new C(); // object of type C
A r; // obtain a reference of type A
r = a; // r refers to an A object
r.callme(); // calls A's version of callme
r = b; // r refers to a B object
r.callme(); // calls B's version of callme
r = c; // r refers to a C object
r.callme(); // calls C's version of callme
}
}
| Is This Answer Correct ? | 3 Yes | 1 No |
What are the four pillars of java?
What is difference between hashset and hashmap?
What is the symbol for line break?
You can create a string object as string str = “abc”; why cant a button object be created as button bt = “abc”;? Explain
How many tetrahedral voids are there in bcc?
Why webdriver is an interface?
What causes memory leak in java?
what is the use of clone method? why user cant overwrite in sub class without its proper defination.
What is null mean in java?
What is a void method java?
What is the synonym of procedure?
is there a separate stack for each thread in java? : Java thread