In the second class in the core programming sequence (TAC-115 → TAC-265 → TAC-365), students will build upon the fundamentals of object-oriented programming to learn about inheritance, polymorphism, abstract classes, and interfaces in the Java programming language. The class will focus on best practice approaches for software project design using object-oriented principles and basic design patterns. By the end of the class, students will be able to design a system with multiple classes using inheritance