Java Program Design Principles, Polymorphism, and Patterns - Sciore, Edward; Sciore, Edward (Apress : Imprint: Apress, 2019)