1. a. banana with area 0.0 b. Square with area 16.0 c. Rectangle with area 8.0 2. a. Legal. Square is a subclass of Shape. All squares have all the functionality of a shape, so it's fine to store them in a variable of type Shape. b. NOT legal. Square is a sublcass of Shape and therefore has *more* functionality. A variable of type Square would be allowed to call the getSideLength method, which does not exist for a Shape object. c. Legal. d. NOT legal. 3. a. Square with area 16.0 b. Rectangle with area 8.0 Compare these results to problem 1. It doesn't matter what type of variable we're using to store the object, the behavior of the object is the same.