This course is designed to be slow-paced, simple and rich in demystifying the question: What really is an object in computer programming? These few lectures serve as a crucial foundation for OOP (Object Oriented Programming). You'll know how objects are constructed and what exactly happens when the program is run. We'll also go over important OOP techniques such as inheritance and polymorphism with abstract classes and interfaces.