public static void main(String[] args) {
		Distance d1 = new Distance(10, "mm");
		Distance d2 = new Distance(2.5, "cm");
		Distance d3 = d1.add(d2);

		Point p1 = new Point(new Distance(10, "mm"), new Distance(15, "mm"));
		Point p2 = new Point(new Distance(30, "mm"), new Distance(50, "mm"));
		Point p3 = new Point(new Distance(10, "mm"), new Distance(50, "mm"));

		Distance d4 = p1.distanceTo(p2);

		Shape[] list = new Shape[3];
		list[0] = new Line(p1, p2);
		list[1] = new Rectangle(p1, d2, d3);
		list[2] = new Circle(p3, d2);

		System.out.println("d1: " + d1);
		System.out.println("d2: " + d2);
		System.out.println("d3: " + d3);
		System.out.println("d4: " + d4);

		System.out.println("p1: " + p1);
		System.out.println("p2: " + p2);
		System.out.println("p3: " + p3);

		for(int i = 0; i < list.length; i++) {
			System.out.println("List[" + i + "]; " + list[i]);
			System.out.println("Perimeter: " + list[i].perimeter());
			System.out.println("Area: " + list[i].area() + " m^2");
		}
	}