
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Learn Java basics fast with animated, interactive lectures and practical coding exercises. Focus on data processing and building real projects in IntelliJ IDEA.
Install the Java Development Kit and IntelliJ IDEA to write, run, and test Java applications; enjoy code suggestions, debugging, and faster workflow as the IDE predicts actions and shows hints.
Install the Java Development Kit on Windows by downloading the JDK, accepting the license, and running the installer, then install IntelliJ IDEA Community Edition and set up a new project.
Begin Java by creating a Main class in the src folder and printing Hello, World! and Hi, Universe! using System.out.println (sout), then run Main.main to see text appear in order.
Learn how to use variables in Java to store and print phrases like Hello, World! with a greetings variable, and explore the assignment operator, var, and the .var shortcut.
Learn to build a greeting by concatenating strings using the plus sign, inserting a username variable into a message, and printing it with soutv shorthand.
Learn to read input from the console with Java's scanner and interactivity. Build a bot messenger that asks for name and surname, then greets the user.
Solve a Java coding exercise that reads a name and profession from the console with scanner.nextLine() and prints 'name is a profession.' using concatenation, while moving between IntelliJ and Udemy editor.
Learn Java primitives, the four basic data type groups: integers, floating-point numbers, characters, and boolean, along with data conversion between primitives and String.
Discover how Java integers work, learning byte, short, int, and long, their memory allocation, RAM usage, and value ranges, with practical tips on when to use int or long.
Explore floating-point numbers in Java, including the float and double primitives, their byte sizes, and why decimals like 0.1–0.3 aren’t represented exactly, with guidance to prefer double.
Explore the char primitive in Java, its 2-byte Unicode storage, how it differs from String, and three ways to obtain the copyright sign.
Learn the boolean primitive in Java, its true or false values, and how conditions use booleans to control program behavior, with examples like 'Welcome!' or 'Access Denied!'.
Learn to read input with scanner and convert strings to int, long, double, boolean, and char using parse methods and ordinal extraction, plus casting, overflow awareness, and valueOf.
Explore operators, the five groups of symbols that perform operations on operands and return a result, and see how plus with 'ABC' and 'DEF' forms a string through concatenation.
Explore arithmetic operators in java, including addition, subtraction, multiplication, division, and remainder, with precedence between string concatenation and addition, and how to obtain floating results.
Learn how assignment operators act as shortcuts for arithmetic operators, using the additive assignment operator to update a variable’s value and improve code readability.
Explore unary operators in java basics, including unary minus, logical complement, and increment and decrement operators. Learn post and pre increment and decrement behavior with practical examples.
Learn equality and relational operators—equal to, not equal to, greater than, and greater than or equal to—using remainders to test even, odd, and integer status with a 21 birth-year check.
Master conditional operators, using boolean operands to yield boolean results. Combine and or operators, with and higher priority, to check a number in the 0 to 100 range.
Explain the ternary operator in Java, with its three operands, using a boolean condition to print even or odd and add a checkmark for verified accounts.
Explore Java control flow statements, including decision making, looping, and branching, and learn how the ternary operator lets the program decide the result of operations.
Master the if-else control flow by evaluating boolean conditions to run the correct code blocks, using optional else branches, else-if, and the conditional operator or for seasons or unknown cases.
Master the switch statement as a concise alternative to if-else chains, handling int, char, or string, with examples of months to seasons, default cases, and IntelliJ shortcuts.
Master the Java while loop by executing its body while the boolean condition is true, explore infinite loops, finite i < 5 iterations, and compare with do-while.
Explore the for loop as an alternative to while and if-else, learn its three parts, and build a multiplication table with proper output alignment.
Explore branching statements in Java basics, using break to interrupt loops like for and switch and continue to skip iterations, demonstrated with printing even numbers.
Explore building a console game 'guess the number' in java, where players set attempts and range, guess a random number, and receive win or lose feedback.
Build a simple number guessing game by using a scanner, generating a random 0-100 number, and loop reading input to tell whether it is greater or less, then return.
Add a currentAttempts variable to control a game loop, display and decrement remaining attempts, break on a correct guess, and determine win or loss based on remaining attempts.
Add a console menu using a switch statement with two items: 'start a new game' and 'quit'; 1 starts a new game, 2 quits.
Learn to add settings in a Java game by defining constants for origin, bound, and attempts, replacing literals with variables, and reading console input to start a game with settings.
Polish the game by adding input validation loops for attempts, origin, and bound, reading numbers from the console and printing guided errors when values are invalid.
Master one-dimensional arrays by storing multiple values, indexing elements, and using length for loops; practice printing squares and calculating min, max, sum, and average from user input.
Explore how a two-dimensional array is an array of one-dimensional arrays, forming a matrix, and practice accessing elements by index. Use nested loops to print a Tic-Tac-Toe field to console.
Explore the ForEach statement as a simplified alternative to the for loop for arrays. Print each element without explicit indexes and replace awkward for loops in a tic-tac-toe example.
Explore object-oriented concepts by building a Dog class with name, age, and breed fields, instantiate a Dog object, assign its attributes, and print its description.
Learn to create reusable Java methods to avoid code duplication, print dog info, and enable interactions by passing another dog; use getInfo to return strings.
Explore constructors in java basics with animations: learn no-arguments and all-arguments constructors, fix field assignments with this, generate constructors via Alt+Insert, create dog array and loop—Scanner reads input.
Understand overloading in Java by creating overloaded constructors and methods, using this to chain constructors, and calling one method from another to avoid code duplication.
Learn how static fields and methods share data across all dogs, using Dog.sound and printSound, and see why static context cannot access non-static fields in main.
Explore the final modifier in Java to prevent variable reassignment, apply it to scanners and class fields, and use uppercase underscore naming for constants like Integer.MIN_VALUE.
Learn how object fields initialize by default, with primitive values as 0, space, or false, and non-primitives as null; prevent NullPointerException through null checks and ternary safeguards.
Group Cat, Dog, and Mouse into the animal package under src to prevent Main from getting lost, and use imports or static imports for Dog.getSound and other public members.
Explore how access modifiers control visibility in Java, including public, private, package-local (default), and protected, and how they apply to classes, fields (static and non-static), constructors, and methods.
Learn how to use getters and setters to access private fields, validate inputs, and avoid duplicating changes across a Java program, with autocomplete tips and real-world best practices.
Explore inheritance by creating a base Animal class with a name field, extending Cat, Dog, and Mouse, using super constructors, and safely handling casts in an Animal array.
Override the sleep method in cat and dog classes to demonstrate method overriding, using super to call the parent method and annotating with @Override for accuracy.
Discover how the Java Object class provides overridable methods like toString, equals, and hashCode, and learn to override them in a Dog class to print meaningful data and compare instances.
Define abstract classes to prevent instantiation and enforce subclass implementation using chess pieces as examples. Override or abstract the move method in ChessPiece, forcing King to implement movement.
Implement a Pet interface in Dog to illustrate interface behavior contracts and how interfaces allow implementing multiple interfaces beyond single inheritance.
Explore how nested classes organize related Java types by moving ChestItem into a static inner Item inside Chest, enabling an array of items, varargs constructors, and clearer, interrelated design.
Explore how anonymous classes let you implement onClick behavior directly in code, keeping HelloWorld and LoginButton logic in one place in Java without needing separate files.
Explore using enums to model seasons and months, add fields and constructors, and leverage getters, name and ordinal, valueOf, values, and static imports to simplify code.
See how generics replace duplicated containers with a single Container class using a type parameter T. Compare primitive types and wrapper classes, and see how ArrayList stores a single type.
Why Learn Java with This Course?
Java powers over 3 billion devices—from web apps to Android and beyond. But most Java courses are long and boring. Not this one!
This course is designed for absolute beginners who want to learn Java quickly and visually. With animations, engaging effects, and real-world examples, you’ll grasp Java fundamentals faster than ever—in just 3 hours.
What You’ll Learn:
Java basics from scratch—no prior experience needed
Write real Java code with IntelliJ IDEA
Learn with animations and interactive visuals—no boring slides
Solve 20+ coding exercises and quizzes to reinforce learning
Build a fun Java game project step by step
No Fluff, Just Code
We skip the history lessons and get straight to writing Java. No outdated theory—just practical coding from the start.
What’s NOT Covered?
This course focuses on Java fundamentals—not Android, databases, or desktop apps. It’s the perfect launchpad before diving into advanced topics.
Got Questions? I’ve Got Answers!
You’ll have access to a private Q&A forum where I personally help students. Stuck on something? I’m here to support you.
30-Day Money-Back Guarantee
Try it risk-free. If it’s not for you, get a full refund—no questions asked.
A fast, engaging, and interactive way to learn Java.
Join thousands of students—enroll now and start coding today.