interface X{
void m1();
void m2();
}
class Child2 extends Object implements X {
public void m1(){
System.out.println("Child2 M1");
}
public void m2(){
System.out.println("Child2 M2");
}
}
public class ParentChildInfterfaceDemo {
public static void main(String[] args){
X x = new Child2();
X x1 = new Child2();
x.m1();
x.m2();
x.equals(x1);
}
}
Will the above code work?
If yes? Can you please explain why the code
x.equals(x1) will work as the equals method is called on
interface reference vaiable?
Answer Posted / satish
this code is working.because of the reason is interface reference variable is store address of implemented class objects like
X x=new Child2{}
X x1=new Child2{}
above code means create two reference variables are created to interface and store address of implemented class objects.
actually equals method is using compare two strings.
but this senario
x.equals(x1) compare the two objects references .above code returns false
| Is This Answer Correct ? | 4 Yes | 0 No |
Post New Answer View All Answers
When object is created and destroyed?
What is the length of a string?
What are streams?
What is a boolean field?
How do you sort in ascending order in java?
Can we override private methods?
What is generic class?
What is a parameter in simple terms?
What is the this keyword?
Give few examples of final classes defined in Java API?
How much is a java license?
What is a void method java?
Which is best ide for java?
What is the default value of an object reference declared as an instance variable?
Why java is platform independent? Explain.