Java tutorials
37 articles · page 2 of 2Hand-written tutorials, ordered as a recommended learning path.
- 21 Multithreading Understand threads, the Java memory model, synchronization, locks, and concurrent collections. A practical guide to writing correct multithreaded Java code.
- 22 Java Optional Use Java's Optional type correctly: when to return it, when to avoid it, and how to chain operations safely without ever calling get().
- 23 Records vs Lombok Records and Lombok both reduce boilerplate, but they solve overlapping problems in very different ways. Here is when to pick which, with concrete tradeoffs.
- 24 Spring Data JPA Learn Spring Data JPA from the ground up. Understand repositories, derived queries, JPQL, pagination, and transaction boundaries in real Java apps.
- 25 Spring Security A practical introduction to Spring Security. Understand the filter chain, configure authentication, set up authorization rules, and avoid common mistakes.
- 26 Collectors Master java.util.stream.Collectors with practical examples covering grouping, partitioning, downstream collectors, and building your own custom collector.
- 27 Java Streams A practical tour of the Java Streams API: how it works, when to use it, lazy evaluation, collectors, parallel streams, and the pitfalls that trip up newcomers.
- 28 Spring DI How Spring Boot wires your beans: component scanning, constructor injection, qualifiers, profiles, and the testing strategies that follow from each choice.
- 29 MVC vs WebFlux Compare Spring's two web stacks: thread-per-request Spring MVC versus reactive non-blocking WebFlux, and how to choose between them.
- 30 Classes Design Java classes that hold state and behavior cleanly. Constructors, encapsulation, static vs instance, records, and the equals plus hashCode contract.
- 31 Collections Pick the right Java collection by performance and semantics. ArrayList vs LinkedList, HashMap vs TreeMap, immutability, and iteration without surprises.
- 32 Control Flow Every branching and looping construct in modern Java, including switch expressions and pattern matching, with examples that mirror real code.
- 33 Inheritance Use extends, super, and method overriding without painting yourself into a corner. When to inherit, when to compose, and how sealed types help.
- 34 Install Java Install a modern JDK, verify the toolchain, and ship your first Java program from the command line without an IDE doing the magic for you.
- 35 Interfaces Choose between interfaces and abstract classes with confidence. Default methods, sealed interfaces, functional interfaces, and concrete decision rules.
- 36 Streams Transform collections with lambdas and the Stream API. Map, filter, reduce, collectors, parallel streams, and the pitfalls of lazy pipelines.
- 37 Variables Master Java primitives, reference types, literals, and casting. Know exactly what each type costs and where overflow and precision will bite you.