Java programs combine a typed source language, a class-file format, and a runtime with explicit object and concurrency rules. This page separates language basics from the API and operational contracts that tend to break larger services.
Choose a starting point
Begin by compiling a small program and tracing values through methods. Then move through collections, errors, I/O, concurrency, and database access. Read the contract for each API before copying a pattern into a service.
- Java Tutorial
- JDK, JVM and your first program
- Java variables and primitive types
- Java arrays and bounds
- Java classes and objects
- Java equals and hashCode: stable value keys
- Java StringBuilder: bounded text assembly
- Java abstract classes: shared invariants and extension points
- Java console input: Scanner tokens, lines and validation
Common Mistakes
A project that compiles can still lose data through unchecked arithmetic, shared mutable state, or an unclosed stream. The lesson links below expose those failure boundaries alongside the ordinary syntax.
