📄️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.