The Course Where Programming and Fun Meet! Learn JAVA from Scratch With PLENTY of Free Resources and Challenges. You will learn the fundamentals of Java. We will start of easy and learn about variables, conditions, loops, arrays, operators and user input. Then we will take a closer look at classes, objects and methods. Finally we will go over fundamentals concepts of Object Oriented Programming: Inheritance, Encapsulation, Polymorphism and Compositions. We will not merely glance over these topics but get a thorough understanding of what they are, how they work with each other and what role they play. The goal is for you to be thoroughly versed with these FUNDAMENTAL concepts by the end of the course. The videos will compromise of two parts: paper and computer. We will not directly dive into coding but rather gain an understanding of what the concept is and why it is important (on paper). Then we will move to the computer where I will lay out the syntax of the concept for you and give you ample of examples and mini challenges to strengthen your understanding of the concept.