Question

Objectives: Practice java programming with classes and objects, constructors, copy constructors, enum type, array, ArrayList (generic version), overloaded methods, passing by reference etc.

Fig: 1