public class Base {
public void show(int x) { System.out.print("int "); }
public void show(double x) { System.out.print("double "); }
}
public class Sub extends Base {
public void show(int x) { System.out.print("sub-int "); }
}
// Usage:
Base b = new Sub();
b.show(5);
b.show(5.0);What is printed?
- A
int double
- B
sub-int int
- Ccheck_circle
sub-int double
- D
sub-int sub-int
Explanation
show(int) is overridden in Sub, so b.show(5) calls Sub's version printing "sub-int ". show(double) is only in Base, so b.show(5.0) prints "double ".