
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Explore why Java remains a programming language, its approachable syntax, and object oriented design. Learn how Java powers Android apps and real world projects, with hands on modules and certificate.
We will have a very great understanding of OOP after section-6
Learn the basics of Java, object oriented programming, and how to create your program in IntelliJ IDEA. Create a public class with a matching file name and follow naming conventions.
Learn to write a Java hello world program by understanding the main method syntax, including public static void main(String[] args), and printing with System.out.println for the hello message.
Explore explicit and implicit type conversion in Java, showing how declaring a variable and assigning float values can truncate decimals when converting to int, and how explicit casting enforces conversions.
Learn how the increment and decrement operators work in Java, comparing pre and post forms, and observe how evaluation uses original versus updated values in expressions.
Explore if-else logic in Java using a chocolate incident as a relatable example, covering conditions, relational operators (>, <, >=, <=, ==, !=), and basic print statements.
Explore how Java uses logical operators—and, or, and negation—to build boolean expressions, evaluate conditions, and decide teenage eligibility with age-based rules.
Explore how the final keyword in Java makes values constant, preventing reassignment of pi-like numbers stored as double or float, and its use in Android development.
Design a simple calculator in Java using switch-case with breaks and a default case by reading two numbers and an operation, then perform addition or subtraction and print the result.
Explore loops and the while loop using a 24-hour day analogy, showing repetition until a condition fails. Learn to manage flow with increment, print, and break to avoid infinite loops.
Explore how the classical for loop in Java uses initialization, condition, and increment to print even numbers from 1 to 50 and control loop flow.
Explore the do while loop in Java, which executes the block before the condition and guarantees at least one execution, and compare it to the while loop that tests first.
Learn how to compute the sum of the first n natural numbers in Java using a for loop, with user input and a simple, step-by-step approach.
Learn to implement a Java factorial program by taking user input, looping from one to n, and multiplying sequentially to compute the result.
Explore pattern programming in Java by building a star printing pattern driven by user input. Learn to use a scanner and nested loops to format lines with print or println.
Learn how to collect multiple user inputs into an array using a scanner, store each element by index, and print the array elements.
Demonstrate the enhanced for loop by iterating over an array of seven days and printing each day, and show how to access elements and determine the array size.
Explore the Java Math class, its static methods like sin, cos, abs, max, and min, accessible without creating objects. Learn how to use rounding and floor/ceil methods to compare values.
Explore object oriented programming in Java by treating real world entities as classes and objects, with attributes and methods created via new and accessed through static and member calls.
Explore how static methods differ from instance methods and are called via class name without creating an object. Learn when to instantiate for non-static methods and the role of constructors.
Learn how to define and call Java methods, differentiate static and instance methods, use public and private access, and pass or return parameters in a practical main method example.
Master getters and setters in Java and the this keyword, learn to access and modify object attributes like color via get and set methods, and instantiate objects in a class.
Define constructors with the class name to initialize objects during instantiation and overload them with different parameters, including the default constructor invoked automatically.
Explore encapsulation in java by bundling attributes and methods inside a class, binding data with behavior, and using getters and setters to access or modify color and size.
Explore inheritance in Java using a family analogy to show how a subclass extends a superclass to inherit methods, while adding its own unique behavior.
Learn method overriding with father and mother classes, showing how same-name methods are defined in both and how a call depends on the object used.
Learn polymorphism: the same method name with different implementations across classes, using objects to call the appropriate version, with subclass methods taking priority.
Delve into interfaces in Java by contrasting them with abstract classes, implementing multiple interfaces, and building pet-inspired examples that show abstract methods and concrete behavior.
Explore anonymous classes in Java, including creating local anonymous class definitions, overriding methods, and their use in Android development.
Explore the super keyword in Java, using it to access superclass attributes and methods from a subclass, resolve attribute values like color when both classes define them, and understand inheritance.
Learn how Java's data structures, especially lists such as ArrayList, are provided in java.util, how to import them, and how to instantiate and use List, LinkedList, and HashMap.
Learn how to use array list methods such as add, get, remove, clear, and contains to manage elements, retrieve by index, and understand dynamic resizing.
Explore exception handling in Java, use try and catch blocks to manage runtime errors, prevent program termination, and understand finally blocks and throwing exceptions.
Learn file handling in Java by reading data from text files with the java.io module, using Scanner, handling file not found and io exceptions, and closing resources safely.
Explore how a department class nested inside a college enables access to its show method through object instances, illustrating nested classes and encapsulation.
Explore the instanceOf operator in Java to determine if an object is an instance of a class, yielding a boolean result and clarifying object class relationships.
Hey guys! I welcome you all to my course The Complete Java Programmer: From Scratch to Advanced. This course is designed for the learners of all categories: Beginners - who don't have prior knowledge in programming and interested in learning a new skill, Programmers from other languages who wish to learn Java. This course is an experiment that tries to relate almost all the programming concepts in Java to the real world scenarios. In this, we will discuss some real-world scenarios and try to code it using Java. You will also have a very deep insight on Object Oriented Programming in Java which is simply the need of the hour. With bewitching analogies, you will be motivated to pursue in this course with a decent pace so that you can complete the course and earn a certificate. For example, We will be dealing with the core concepts of Object Oriented Programming(OOP) through examples like lion and his cubs so that it will be easy and interesting for you to understand the concept as well as keeps you engaged. You will also have access to all the source codes, some optional problem sheets and quizzes for you to practice and master the skill. Using your knowledge in Java after this course, you can also start learning how to develop Android Apps in Android Studio. Java is the one of the most required skills in IT Industry. Get certified as the complete Java programmer now!
In order to have as few implementation dependencies as feasible, Java is a high-level, class-based, object-oriented programming language. In other words, compiled Java code can run on any platforms that accept Java without the need to recompile. It is a general-purpose programming language designed to enable programmers to write once, run anywhere (WORA). Regardless of the underlying computer architecture, Java applications are often compiled to bytecode that can run on any Java virtual machine (JVM). Although Java has fewer low-level features than either C or C++, it has syntax that is similar to each of them. Unlike most traditional compiled languages, the Java runtime has dynamic capabilities (such reflection and runtime code change).