Java 25
Java Brick by Brick
The whole Java Brick by Brick journey is available online: from the first explanations to advanced APIs, including the volume’s activities.
Java 25 · Complete guide · Draft under review
This guide retains the book’s draft status. Editorial review and comprehension checks with independent readers remain to be completed.
Start with the first brick
Follow the volume from fundamentals to tools, with examples, explanations and activities. The conclusions close the journey after the activities.
Start reading →The complete journey
31 chapters and 8 activity collections.
- 1. Preface
- 2. Object-Oriented Programming
- 3. The Java Language and the Tools for Using It
- 4. Syntax, Variables, Operators, and Arrays
- 5. Controlling Program Flow
- 6. Packages and Modules
- 7. Defining classes and objects
- 8. Encapsulation
- 9. Inheritance, composition and sealed hierarchies
- 10. Object, wrapper classes and enumerations
- 11. Strings and Unicode text
- 12. Exceptions and error handling
- 13. Interfaces, abstract classes and polymorphism
- 14. Annotations: metadata and checks
- 15. Generics and Type Checking
- 16. Functions and Lambdas in Java
- 17. Choosing a Collection
- 18. Stream API: Pipelines, Reductions and Gatherers
- 19. Optional: When a Search Finds Nothing
- 20. Threads and Concurrency in Java
- 20A. Atomic Operations: One Shared Decision at a Time
- 21. Java Classloaders: Finding a Class While the Program Runs
- 23. Further reading: Vector API, processing data in groups
- 24. Reflection API: observing types at runtime
- 25. I/O, files and resources: taking data beyond the program
- 26. Time, localization and exact numbers
- 27. Networking and HTTP: asking another process for data
- 28. External memory and native functions: crossing the JVM boundary
- 29. From source to a program someone else can run
- 30. Quality, security and observability: understanding when the program is not enough
- Activities and Reasoned Solutions C01–C06
- Phase 3 activities
- C13–C18 Activities, First Draft
- C19–C24 activities, first draft
- C20A Activities — Atomic Operations
- C25–C28 activities: choose, test, transfer
- Guided activities for C29 and C30
- Concluding activities: choosing the next brick
- Conclusions. Keep building, brick by brick
Try the examples
Running the programs requires JDK 25. Download the individual Java files linked in the chapter or the complete example project, which includes instructions and a launcher script. The explanations also compare expected output: predict it before running the program.
Massimiliano Tarquini · CC BY-NC 4.0