01: /**
02: A country with a name and area.
03: */
04: public class Country implements Comparable
05: {
06: /**
07: Constructs a country.
08: @param aName the name of the country
09: @param anArea the area of the country
10: */
11: public Country(String aName, double anArea)
12: {
13: name = aName;
14: area = anArea;
15: }
16:
17: /**
18: Gets the name of the country.
19: @return the name
20: */
21: public String getName()
22: {
23: return name;
24: }
25:
26: /**
27: Gets the area of the country.
28: @return the area
29: */
30: public double getArea()
31: {
32: return area;
33: }
34:
35:
36: /**
37: Compares two countries by area.
38: @param otherObject the other country
39: @return a negative number if this country has a smaller
40: area than otherCountry, 0 if the areas are the same,
41: a positive number otherwise
42: */
43: public int compareTo(Object otherObject)
44: {
45: Country other = (Country) otherObject;
46: if (area < other.area) return -1;
47: if (area > other.area) return 1;
48: return 0;
49: }
50:
51: private String name;
52: private double area;
53: }