Project 2 & Final Exam
Design & implement an event-driven application with a graphical user interface.
Apply advanced programming constructs such as recursion and collections to implement solutions.
Write classes containing fields, methods, and constructors. Using classes by instantiating (i.e., creating) objects.
Apply object-oriented design principles such as inheritance, polymorphism, and enumerated types to refactor code and localize changes.