public class A {
public String name() { return "A"; }
}
public class B extends A {
public String name() { return "B-" + super.name(); }
}
public class C extends B {
public String name() { return "C-" + super.name(); }
}
// Usage:
C c = new C();
System.out.print(c.name());What is printed?
- A
C-A
- B
A-B-C
- Ccheck_circle
C-B-A
- D
C
Explanation
C calls super.name() which is B's, prepending "C-". B calls super.name() which is A's, prepending "B-". Result: "C-B-A".