Java, No Tears

Preface

This book teaches students how to program in Java with small, runnable examples. The main examples target JDK 25, the current long-term support baseline. To follow along and execute the code samples, you will need Docker installed. The Docker container is located on Docker Hub. After you have installed Docker, you may run the container as follows.

docker run -it \
 -p 8888:8888 \
 oneoffcoder/book-java-intro

Note that this Docker container has Jupyter Lab running on port 8888. You may access Jupyter Lab at http://localhost:8888 when the Docker container is running.

The diagram below summarizes the learning path through the Java material, starting with setup and syntax before moving into object-oriented design, project workflow, libraries, runtime behavior, modern idioms, and practice.

@startuml
left to right direction
skinparam shadowing false
rectangle "Setup\nand Intro" as setup
rectangle "Types,\nOperators" as syntax
rectangle "Control\nand Loops" as flow
rectangle "Classes,\nGenerics, Enum,\nAnnotations" as oop
rectangle "Packages,\nMaven, Tests" as project
rectangle "Libraries,\nCollections,\nLambda, Streams,\nDate/Time" as libraries
rectangle "Exceptions,\nVirtual Threads,\nIO" as runtime
rectangle "Modern Java,\nJDK 26 Notes,\nOptional Tools" as modern
rectangle "Debugging\nand Practice" as practice
setup --> syntax
syntax --> flow
flow --> oop
oop --> project
project --> libraries
libraries --> runtime
runtime --> modern
modern --> practice
@enduml

That roadmap is useful when you are skimming the book: the early chapters establish the language itself, the middle chapters focus on modeling and project structure, and the later chapters show how Java code behaves in larger, real programs.

About

One-Off Coder logo.

One-Off Coder is an educational, service and product company. Please visit us online to discover how we may help you achieve life-long success in your personal coding career or with your company’s business goals and objectives.

Author

Jee Vang, Ph.D.