public abstract class Shape {
public abstract double area();
public String describe() { return "Area=" + area(); }
}
public class Circle extends Shape {
public double area() { return 3.14; }
}
Shape s = new Circle();
System.out.println(s.describe());What is printed?
- A
Area=0.0
- Bcheck_circle
Area=3.14
- C
Area=
- D
Compile-time error
Explanation
describe() calls area(); dynamic dispatch invokes Circle.area(), returning 3.14.