Skip to main content
Foundation

Advanced Java

Strings, interfaces and records, lambdas and streams, JVM memory, design patterns, testing, JDBC, Spring Boot and interview questions.

📄️Strings, Text and Formatting in Java

Work with Java strings: immutability and the string pool, StringBuilder, formatting, text blocks, regular expressions and Optional.

📄️Interfaces, Enums and Records

Model data and behaviour with interfaces, abstract classes, enums, records and sealed types in modern Java.

📄️Lambdas, Functional Interfaces and Streams

Functional programming in Java: lambda expressions, method references, the built-in functional interfaces and the Stream API with collectors.

📄️JVM Memory Model and Garbage Collection

Understand how the JVM organises memory: stack, heap, metaspace, object lifecycle, garbage collectors and common memory problems.

📄️Design Patterns in Java

The most useful object-oriented design patterns in Java with short code: singleton, factory, builder, strategy, observer and decorator.

📄️Testing with JUnit and Build Tools (Maven and Gradle)

Build and test Java projects: Maven and Gradle basics, JUnit 5 tests, assertions, parameterised tests and mocking with Mockito.

📄️JDBC and Persistence in Java

Access relational databases from Java: JDBC connections and prepared statements, transactions, connection pools and a first look at JPA.

📄️Spring Boot Basics

Build a REST API with Spring Boot: project setup, controllers, dependency injection, validation, configuration and testing.

📄️Java Interview Questions and Answers

Frequently asked Java interview questions with concise answers: OOP, collections internals, strings, concurrency, JVM and modern Java.