☕ Java

Java Tutorial

Java is a statically typed, object-oriented language that runs on the JVM. It is widely used for backend services, enterprise systems and Android, and it is the language Spring Boot is built on.

This tutorial starts with installing the JDK and writing your first program, then moves through the core language, object-oriented design, strings, exceptions, collections, generics, multithreading, I/O and NIO, the functional features introduced in Java 8, newer language features up to Java 21, the Date Time API and JDBC. Each lesson explains the idea in plain terms and follows it with code you can run.

Suggested learning path

  1. Introduction and Java Basics: set up the JDK, learn variables, types and operators.
  2. Control Statements, Arrays and Strings: write real programs with loops and text handling.
  3. Object-Oriented Programming and Exception Handling: classes, inheritance, interfaces, error handling.
  4. Collections Framework and Generics: the data structures used in almost every Java project.
  5. Java 8 Features and Functional Programming: lambdas, streams and Optional.
  6. Multithreading, I/O and JDBC: concurrency, files and databases.
Start the Java tutorial →

All sections

19 sections, 315 lessons.

Introduction

22 lessons

View all 22 lessons →

Java Basics

23 lessons

View all 23 lessons →

Control Statements

13 lessons

View all 13 lessons →

Object-Oriented Programming

34 lessons

View all 34 lessons →

Arrays

14 lessons

View all 14 lessons →

Strings

16 lessons

View all 16 lessons →

Exception Handling

14 lessons

View all 14 lessons →

Packages and Access Control

8 lessons

View all 8 lessons →

Java Memory Management

9 lessons

View all 9 lessons →

Collections Framework

33 lessons

View all 33 lessons →

Generics

10 lessons

View all 10 lessons →

Multithreading

32 lessons

View all 32 lessons →

Java I/O

19 lessons

View all 19 lessons →

Java NIO

6 lessons

View all 6 lessons →

Java 8 Features

15 lessons

View all 15 lessons →

Java 9 to 21 Features

16 lessons

View all 16 lessons →

Functional Programming

7 lessons

View all 7 lessons →

Date Time API

10 lessons

View all 10 lessons →

Java Database Connectivity (JDBC)

14 lessons

View all 14 lessons →