What happens if the following program is compiled and executed?
interface MyInterface{
void display();
}
interface MySubInterface extends MyInterface{
void display();
}
public class Test implements MySubInterface{
public void display(){
System.out.print("Welcome to Examveda.");
}
public static void main(String args[]){
Test t = new Test();
t.display();
}
}
interface MyInterface{
void display();
}
interface MySubInterface extends MyInterface{
void display();
}
public class Test implements MySubInterface{
public void display(){
System.out.print("Welcome to Examveda.");
}
public static void main(String args[]){
Test t = new Test();
t.display();
}
}A. The code will lead to a compilation error as declaration of the display method has been provided in two interface.
B. The code will lead to a compilation error due to public modifier while declaring the display method.
C. The code will compile and execute successfully showing the output Welcome to Examveda.
D. The code will lead to a compilation error as the display method is not declared as abstract.
E. None of these
Answer: Option C
Solution (By Examveda Team)
The program will compile and execute successfully as you can declare methods with same name in an interface and the method of either interface can be used, implying the option a is incorrect. The option B and D are incorrect as the methods of an interface are implicitly public and abstract.

Join The Discussion