java-core-examples

Runnable companion code for ankurm.com's Java-core / concurrency series. One Maven module per article; each module's own README has that article's version table, quickstart, and traps.

Module Post
jmm The Java Memory Model Explained: volatile, happens-before, and Why Your Double-Checked Lock Failed
locks synchronized vs ReentrantLock vs StampedLock: Benchmarks and a Decision Table
atomics Java Atomics and VarHandle: CAS, LongAdder, and When Atomics Beat Locks
vt-pinning Diagnosing Virtual Thread Pinning in Production: JFR Events, jcmd, and Real Fixes
synchronizers CountDownLatch vs CyclicBarrier vs Phaser vs Semaphore in Java
executors ExecutorService Done Right: Shutdown, try-with-resources and Virtual Thread Executors
concurrency-interview Top 40 Java Concurrency Interview Questions and Answers (2026)
arithmetic Add Two Numbers in Java Without Overflow: addExact, Widening, and BigInteger
hashmap-concurrenthashmap Java HashMap vs ConcurrentHashMap: Complete Interview Guide
exceptions Java Exception Handling Deep Dive: Checked vs Unchecked, Suppression, and What Exceptions Actually Cost
regex Java Regex Tutorial: Pattern, Matcher, Groups, Lookarounds and ReDoS
serialization Java Serialization in 2026: Why It's Dangerous and What Replaced It
strings Java Strings Deep Dive: Interning, StringBuilder, Text Blocks, and the Concatenation Benchmark
collections How to Sort a HashMap by Value (and Key) in Java
nio2 Java NIO.2 File API: Files, Path, WatchService, and Streaming Large Files Without OOM

License

MIT - see LICENSE.

S
Description
Runnable companion code for ankurm.com's Java-core / concurrency series.
Readme MIT
288 KiB
Languages
Java 87.3%
Shell 12%
C 0.7%