As a Computer Science Student in the Hebrew University of Jerusalem, I was required to take the Introduction to Object-Oriented Programming course.
This is a course that teaches you the basic and advanced concepts of Object-Oriented Programming, Design Patterns, OOP Principles, and Generic Programming, using Java as the main language.
It lasted 12 weeks, in which, we've submitted a total of 5 exercises in various fields and topics.
More information can be found Here: https://shnaton.huji.ac.il/index.php/NewSyl/67315/2/2022/.