// faltam os construtores interface Shape { double area(); } abstract class AnyShape implements Shape { protected int color; } class Line extends AnyShape { private double x0, y0; private double x1, y1; double area() { return 0; } } class Circle extends AnyShape { private double x, y; private double radius; double area() { return 3.14159 * radius * radius; } } class Rect extends AnyShape { private double x0, y0; private double x1, y1; double area() { return Math.abs((x0 - x1) * (y0 - y1)); } } class Canvas { private java.util.Vectorshapes; double area() { double sum = 0; for(Shape s : shapes) sum += s.area(); return sum; } }