Add jep512 module: compact source files and instance main methods on JDK 25 and 27

Runnable sources, broken examples and captured transcripts for the ankurm.com JEP 512 article,
including the measured launch order and a private-constructor difference between 25 and 27.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01TF9JWFvJSNm6HVzswzZU5a
This commit is contained in:
Claude
2026-09-24 10:32:47 +00:00
parent 6b5a918278
commit e0cb6e83e2
34 changed files with 490 additions and 0 deletions
+8
View File
@@ -56,6 +56,14 @@ Timings, RSS, GC counts and the Vector species are machine dependent; treat them
| 16 | [Stream Gatherers (JEP 485)](docs/16-gatherers.md) |
| 17 | [Scoped values vs ThreadLocal (JEP 506)](docs/17-scoped-values-migration.md) |
## Standalone article modules (no `docs/` folder)
These modules keep only sources, a `run.sh` and their transcripts (`output/`). The explanation lives in the article itself, in collapsible sections.
| Module | Article | What it demonstrates |
|---|---|---|
| [`jep512/`](jep512) | Compact Source Files and Instance Main Methods in Java 25 (JEP 512) | `java Hello.java` on JDK 21 vs 25 vs 27, the class `javac` builds around `void main()`, implicit `java.base` imports, `java.lang.IO`, the measured launch order, a private-constructor difference between 25 and 27 |
## Captured output (`docs/output/`)
| File | Produced by | What it is |