public abstract class Shape implements Comparable { protected double area; protected Shape(double area) { this.area = area; } public abstract double area(); public int compareTo(Shape other) { double difference = area() - other.area(); if (difference < 0) { return -1; } else if (difference > 0) { return 1; } else { return 0; } } }