The purpose of this exercise is to sharpen your understanding of the difference between "being a client of class C" and "being af subclass of class C". The class Point3D extends Point2D by means of inheritance. As an alternative, the class Point3D may be implemented as a client of Point2D. In more practical terms this means that the class Point3D has an instance variable of type Point2D. Now implement Point3D as a client of Point2D - such that a 3D point has a 2D point as a part. Be sure that the class Point3D has the same interface as the version of class Point3D from the course material. Evaluate the difference between "being a client of" an "extending" class Point2D. Which of the solutions do you prefer? |