Java Programming Fundamentals: From Zero to Java Developer

Master Java 21 from scratch: syntax, OOP, data structures, and a professional dev setup

Your complete on-ramp to Java programming. Starting from zero, no assumed knowledge, this course walks you through installing JDK 21, configuring a professional IDE, and progressively mastering the Java language: variables, control flow, methods, object-oriented design, Java 21 Records and Sealed Classes, pattern matching, collections, exception handling, and an introduction to Maven and Gradle. By the end, you will be fully equipped to tackle the Enterprise Spring Boot Architecture Blueprint (JAVA-201).

$145 $21 86% OFF
4 CEU Credits
40 Study Hours (6 Weeks)
Beginner
6 Modules
36 Hands-on Labs
Course Tuition
$145 $21 86% OFF
CEU Credits 4 CEUs
Study Workload Breakdown (40 Hours):
Architectural Reading & Theory: 13.6 hrs
Hands-on Labs & Coding Drills: 23.4 hrs
Live Mentorship Cohort $150

Prefer live accountability? Join a guided 4–6 week cohort with weekly live faculty calls, 1-on-1 code reviews & capstone grading. Subsidized by Savadub Limited CSR.

Join Cohort ($150)
Subsidized Tuition: This course is made accessible at $21 through the Corporate Social Responsibility (CSR) endowment from Savadub Limited and partner sponsors.

Course Prerequisites

  • No prior programming experience required. A computer with internet access is all you need.
Part of Academy Track:
Enterprise Java Backend Engineering & Distributed Systems Stage 1 of 4 Courses in this track progression.
Access Lab Materials on LMS
Competency Matrix

What You Will Master

Install and configure a Java 21 professional development environment from scratch
Write, compile, and run Java programs using the command line and an IDE
Master core Java syntax: variables, operators, strings, control flow, and loops
Design object-oriented programs using classes, inheritance, encapsulation, and polymorphism
Use Java 21 modern features: Records, Sealed Classes, Text Blocks, and pattern matching switch
Work confidently with arrays, ArrayList, HashMap, generics, and exception handling
Understand Maven and Gradle project structures in preparation for Spring Boot
Detailed Syllabus

Curriculum Modules (6 Modules)

Explore the structured module breakdown, lesson outcomes, and practical lab exercises.

01

Module 1: Environment Setup & First Java Program

6 Lessons • ~5.8 Study Hours (0.58 CEUs)
~5.8 hrs 0.58 CEUs

Welcome to Module 1: Environment Setup & First Java Program. Understand the course roadmap, what you will build, how Java fits into the enterprise ecosystem, and why mastering fundamentals before Spring Boot is non-negotiable.. Learn what Java is, how it evolved from Java 1.0 to Java 21 LTS, the JVM model that makes Java platform-independent, and why Java 21 is the definitive version for modern backend development.. Step-by-step installation of OpenJDK 21 (Eclipse Temurin) on all major operating systems, setting JAVA_HOME, verifying the installation, and understanding why sdkman is the professional way to manage JDK versions..

00
Course Introduction: Zero to Java Developer

Understand the course roadmap, what you will build, how Java fits into the enterprise ecosystem, and why mastering fundamentals before Spring Boot is non-negotiable.

~60 min Lab Exercise
01
What is Java? History, Versions & Why Java 21

Discover the architectural evolution of Java from Green Team to Java 21 LTS, how the JVM achieves cross-platform execution, and why Java 21 LTS is the foundation for modern enterprise backends.

~50 min Lab Exercise
02
Installing JDK 21: Windows, macOS & Linux

Install OpenJDK 21 LTS (Eclipse Temurin) on macOS, Windows, and Linux, configure the JAVA_HOME environment variable, and verify javac and java from the command line.

~55 min Lab Exercise
03
IDE Setup: IntelliJ IDEA Community Edition & VS Code

Set up and configure the two premier Java IDEs: IntelliJ IDEA Community Edition and Visual Studio Code with the Extension Pack for Java. Configure JDK 21 SDK settings and essential keybindings.

~55 min Lab Exercise
04
Your First Java Program: HelloWorld Anatomy

Write, dissect, and run HelloWorld.java line by line. Understand public class rules, the exact signature of public static void main, System.out.println, and Java's case sensitivity.

~65 min Lab Exercise
05
Compiling & Running Java: javac, java & the Classpath

Master the command-line compilation pipeline with javac and java. Understand bytecode (.class), javap disassembly, the classpath (-cp), package declarations, and multi-file compilation.

~65 min Lab Exercise
Automated Code Evaluations & Lab Grading in LMS Launch in LMS Playground

Welcome to Module 2: Java Language Fundamentals. Learn how Java categorizes every piece of data into a strict type system. Understand the 8 primitive types, reference types, how to declare and initialize variables, and what var (local variable type inference) does in modern Java.. Work through every Java operator category with practical examples: arithmetic (including integer division and modulo), comparison, logical (short-circuit &&, ||), bitwise, assignment shorthand, and the ternary conditional operator.. Deep dive into Java's String type: immutability, the string pool, essential String methods, string concatenation vs StringBuilder, and the Java 21 Text Block feature for clean multi-line string literals..

01
Variables, Data Types & the Java Type System

Master Java's static type system. Explore all 8 primitive types, byte sizes, ranges, reference types, memory representation (Stack vs Heap), and local variable type inference with var.

~65 min Lab Exercise
02
Operators: Arithmetic, Comparison, Logical & Ternary

Understand Java operators in depth: arithmetic operations, integer division gotchas, compound assignments, pre/post increment, comparison operators, short-circuit evaluation, and ternary operator.

~60 min Lab Exercise
03
Strings: Literals, the String Class & Java 21 Text Blocks

Master Java strings: immutability, the String Constant Pool, the difference between == and .equals(), StringBuilder for concatenation performance, and multi-line Text Blocks.

~65 min Lab Exercise
04
User Input with Scanner

Capture and parse terminal user input with java.util.Scanner. Understand next(), nextLine(), nextInt(), input tokenization, the newline-skipping gotcha, and resource management.

~60 min Lab Exercise
05
Type Casting & Type Conversion

Master type conversion in Java: implicit widening casting vs explicit narrowing casting, numeric promotion rules in expressions, parsing strings, and avoiding data truncation.

~60 min Lab Exercise
Automated Code Evaluations & Lab Grading in LMS Launch in LMS Playground

Welcome to Module 3: Control Flow & Logic. Master Java's primary decision-making construct. Write clean if/else chains, understand the dangling-else problem, use single-statement vs block forms correctly, and avoid common boolean condition mistakes.. Master Java's switch construct in both its classic statement form and the modern switch expression form introduced in Java 14. Understand fall-through, break, the arrow syntax, and when to use switch over if/else chains.. Java 21 finalizes pattern matching for switch: one of the most powerful language features in recent Java history. Learn type patterns, guarded patterns (when clauses), null handling in switch, and how this replaces verbose instanceof chains..

01
Conditionals: if, else if, else

Master decision-making in Java with if, else if, and else statements. Understand boolean conditions, nested conditionals, block scoping rules, and enterprise guard clause patterns.

~60 min Lab Exercise
02
Switch Statements & Switch Expressions (Java 14+/21)

Compare legacy colon switch statements against modern arrow switch expressions. Master exhaustiveness, multi-label cases, the yield keyword, and eliminating accidental fall-through bugs.

~60 min Lab Exercise
03
Pattern Matching with switch (Java 21)

Master Java 21 JEP 441 Pattern Matching for switch. Dispatch logic on object types, use guarded patterns with when clauses, handle null cases safely, and eliminate ugly instanceof casting.

~65 min Lab Exercise
04
while & do-while Loops

Master conditional iteration with while and do-while loops in Java. Understand pre-test vs post-test loop mechanics, state updating, avoiding infinite loops, and real-world polling/retry patterns.

~55 min Lab Exercise
05
for & for-each Loops

Master counted iteration in Java: traditional 3-part for loops, stepping indices, array iteration, and the enhanced for-each loop for traversing arrays and Iterable collections.

~60 min Lab Exercise
06
break, continue & Nested Loops

Master loop control in Java: terminating iterations with break, skipping cycles with continue, handling nested 2D loops, and using labeled breaks for complex search algorithms.

~55 min Lab Exercise
Automated Code Evaluations & Lab Grading in LMS Launch in LMS Playground

Welcome to Module 4: Methods & Code Organization. Learn the anatomy of a Java method: access modifier, static vs instance, return type, method name, parameter list, and body. Understand the call stack, how method calls are tracked and how execution returns to the caller.. Go deep on method parameters: pass-by-value semantics for primitives vs pass-by-reference for objects, multiple return values via arrays or records, and method overloading, providing multiple versions of a method with different signatures.. Understand exactly where variables exist in memory: local scope, method scope, class scope, and how the JVM uses the call stack and heap. Avoid the common mistake of accessing variables outside their scope..

01
Declaring & Calling Methods

Master method declaration in Java: return types, method naming, parameter lists, method signatures, the DRY principle, and calling static vs instance methods.

~60 min Lab Exercise
02
Parameters, Return Types & Method Overloading

Master method signatures and method overloading in Java. Understand compile-time polymorphism, parameter type resolution, autoboxing rules, and why return type alone cannot overload a method.

~60 min Lab Exercise
03
Variable Scope & the Call Stack

Understand the JVM Call Stack and memory model during method execution. Master variable lifetime, block scoping, stack frames, and the universal rule: Java is strictly Pass-by-Value.

~65 min Lab Exercise
04
Recursion: Concepts & Practical Examples

Master recursive thinking in Java: base cases, recursive steps, call stack visualization, avoiding StackOverflowError, and practical applications in directory scanning and JSON tree parsing.

~65 min Lab Exercise
05
Varargs & Static Utility Methods

Master variable-length arguments (varargs) in Java. Design robust, stateless static utility classes, enforce non-instantiability with private constructors, and practice clean utility patterns.

~55 min Lab Exercise
Automated Code Evaluations & Lab Grading in LMS Launch in LMS Playground

Welcome to Module 5: Object-Oriented Programming (OOP). Understand the class as a blueprint and objects as instances. Write your first class with fields and a constructor, instantiate objects with new, and understand what happens in memory when objects are created on the heap.. Distinguish instance fields from local variables, write instance methods that operate on an object's own state, and use the this keyword to resolve ambiguity between field names and parameter names, and to call one constructor from another.. Implement encapsulation: hiding internal state and exposing only controlled access. Master Java's four access modifiers, write proper getters and setters, and understand when setters are harmful and should be replaced by Records or builder patterns..

01
Classes, Objects & Constructors

Master the foundation of Object-Oriented Programming: defining classes as blueprints, instantiating objects on the heap with new, default vs parameterized constructors, and constructor overloading.

~65 min Lab Exercise
02
Instance Variables, Methods & the `this` Keyword

Understand instance state vs static state, how instance methods operate on object context, shadowing prevention with the this reference, and method chaining with return this.

~60 min Lab Exercise
03
Encapsulation: Access Modifiers, Getters & Setters

Master the first pillar of OOP: Encapsulation. Compare all 4 access modifiers (private, package-private, protected, public), guard data invariants with validated setters, and prevent state corruption.

~65 min Lab Exercise
04
Java 21 Records: Immutable Data Classes

Eliminate boilerplate with Java Records (JEP 395). Understand compact constructors, record immutability, automatically generated getters, equals, hashCode, toString, and DTO modeling.

~60 min Lab Exercise
05
Inheritance & the `extends` Keyword

Master the second pillar of OOP: Inheritance. Extend classes with extends, reuse state and behavior, understand constructor delegation with super(), and know why Java supports single inheritance only.

~65 min Lab Exercise
06
Polymorphism: Overriding & instanceof Pattern Matching

Master runtime polymorphism and dynamic method dispatch. Use @Override safely, understand virtual method tables (vtable), and use Java 16/21 Pattern Matching for instanceof.

~65 min Lab Exercise
07
Abstract Classes & Interfaces

Master interface-driven architecture in Java. Compare abstract classes against interfaces, understand default and static methods in interfaces, and implement loose coupling for enterprise dependency injection.

~70 min Lab Exercise
08
Sealed Classes & Interfaces (Java 17+/21)

Master Sealed Classes and Interfaces (JEP 409). Restrict subclassing with permits, model Algebraic Data Types (ADTs), and unlock compiler-guaranteed exhaustive pattern matching without default clauses.

~65 min Lab Exercise
Automated Code Evaluations & Lab Grading in LMS Launch in LMS Playground

Welcome to Module 6: Data Structures, Collections & Foundations. Arrays are Java's fundamental fixed-size data structure. Learn to declare, initialize, and iterate single-dimensional and multi-dimensional arrays, use Arrays utility methods, and understand why arrays have limitations that led to the Collections Framework.. The Java Collections Framework provides dynamic, resizable data structures. Master ArrayList as the go-to List implementation, understand the List interface contract, and learn when LinkedList's deque operations make it preferable.. Maps and sets are essential data structures for lookups, frequency counting, and uniqueness enforcement. Master HashMap for key-value storage, iterate over entries, and use HashSet to efficiently eliminate duplicates and test membership..

01
Arrays: Declaration, Indexing & Iteration

Master Java arrays: fixed-length memory layout, contiguous allocation, zero-based indexing, multidimensional arrays, java.util.Arrays utility algorithms, and ArrayIndexOutOfBoundsException.

~60 min Lab Exercise
02
ArrayList & LinkedList

Master dynamic lists with the Java Collections Framework. Compare ArrayList vs LinkedList memory architecture, dynamic resizing (1.5x capacity growth), time complexities, and List interface polymorphism.

~65 min Lab Exercise
03
HashMap & HashSet

Master key-value dictionaries and unique sets with HashMap and HashSet. Understand hash codes, bucket tables, collision resolution with linked lists and red-black trees, and the equals/hashCode contract.

~65 min Lab Exercise
04
Generics Basics

Master Java Generics (<T>): compile-time type safety, eliminating runtime ClassCastException, writing generic classes and methods, bounded type parameters (<T extends Number>), and type erasure.

~60 min Lab Exercise
05
Exception Handling: try, catch, finally, throw

Master enterprise exception handling: Throwable hierarchy, checked vs unchecked (runtime) exceptions, try-catch-finally semantics, try-with-resources (AutoCloseable), and custom business exceptions.

~70 min Lab Exercise
06
Introduction to Build Tools: Maven & Gradle

Understand why real enterprise projects use build automation. Explore Maven pom.xml and Gradle build.gradle.kts, dependency resolution from Maven Central, standard folder layout, and packaging JARs.

~65 min Lab Exercise
Automated Code Evaluations & Lab Grading in LMS Launch in LMS Playground

Enterprise Java & Spring Boot Progression

Continue advancing through the sequential curriculum stages of this academy track:

STAGE 1 6 Weeks
Java Programming Fundamentals: From Zero to Java Developer
Currently Viewing
Enroll in JAVA-101 on LMS