/** Un círculo dado por su radio. Un record es final: cumple la regla de sealed. */
public record Circle(double radius) implements Shape {
    public Circle {
        if (radius <= 0) {
            throw new IllegalArgumentException("radio no positivo: " + radius);
        }
    }
}
