> For the complete documentation index, see [llms.txt](https://isubasinghe.gitbook.io/isithas-wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://isubasinghe.gitbook.io/isithas-wiki/software_engineering/languages/java.md).

# Java

## Basic idea

Class-based object-oriented language for the JVM (Gosling, 1995). "Write once, run anywhere" via bytecode and a portable runtime; conservative evolution favouring backwards compatibility.

## Key facts

* Year / creator: 1995, James Gosling at Sun.
* Paradigm: object-oriented + (since 8) functional bits (lambdas, streams).
* Typing: static, strong, nominal; type inference via `var` (Java 10+).
* VM: JVM; bytecode JIT-compiled by HotSpot / GraalVM.
* Memory: garbage-collected (G1, ZGC, Shenandoah).
