
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Learn to declare Java variables with primitive and non-primitive datatypes, including int, long, short, byte, double, String, and boolean, and print values with System.out.println using concatenation.
Explore arrays challenges in Java by locating an element's index with a for loop, copying string to duplicate with a while loop, and finding max and min in double array.
Master Java's arithmetic and logical operators, including modulo and division, and learn to compare values. Use a scanner to read user input for name, age, and favorite animal.
Learn how Java methods group code, accept parameters, return values, and are called, with addition and a minimum finder example, plus static versus instance and public versus private.
Explore interfaces in Java by defining method signatures, understanding visibility, and implementing interfaces in classes with real-world analogies like dogs and cats.
Learn the basics of inheritance by comparing parent and child classes, sharing attributes and methods, and exploring method overriding with a basic and an advanced calculator example.
Explore polymorphism in Java by seeing how objects can take many forms through inheritance, method overriding, and dynamic polymorphism, with examples using person and employee classes.
Explain abstraction and abstract classes in Java, compare them with interfaces and abstract methods, and show why you cannot instantiate an abstract class and how subclasses implement its methods.
Q: What will I learn in this course?
Ans: You will learn the fundamentals of Java. We will initially 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 the fundamentals concepts of Object-Oriented Programming: Inheritance, Encapsulation, Polymorphism, and Composition.
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.
Q: How will this course be taught?
Ans: 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 examples and mini-challenges to strengthen your understanding of the concept.
Additionally, I will link a document for each video which will go over what we learned and will include additional resources for you to check out. I will also link the source code for each video.
Once you have a good understanding of the concept, there will be a video where I will present you with multiple challenges at the start of the video and spend the rest of the video solving each challenge I presented, explaining every line of code and the general logic of the solution.
By the end of this course, I hope that you have a good grasp of the concepts introduced in this course and are able to utilize them effectively.