Structured notes + runnable examples for every topic in Shrayansh's JAVA from Basics to Advanced playlist. Each package has:
NOTES.md— concise concepts, gotchas, and interview anglesDemo.java(and supporting classes) — runnable examples
# compile everything
javac -d target/classes $(find src/main/java -name "*.java")
# run a single demo
java -cp target/classes revision._25_hashmap_internals.Demo
# run everything
bash run_all.sh- OOP — four pillars
- JVM, JRE, JDK
- Why only one public class per file
- Variables — primitive types
- IEEE 754 — float/double memory layout
- Variables — reference types
- Methods
- Constructors
- Memory management & GC
- Nested / Abstract / Super-Sub classes
- Generic classes
- Enum, POJO, Final
- Singleton & Immutable
- Interfaces — Part 1
- Interfaces — Part 2 (default/static/private, Java 8/9)
- Functional Interfaces & Lambdas
- Reflection
- Annotations
- Collections framework overview
- Comparator vs Comparable, PriorityQueue
- Deque & List
- HashMap internals
- LinkedHashMap & TreeMap
- Set
- Streams (Java 8)
- Threads, Process, Memory model
- Thread lifecycle & inter-thread communication
- Join, Daemon, Priority
- Locks & Conditions (Reentrant, ReadWrite, Stamped, Semaphore)
- Lock-free concurrency (CAS, Atomic, Volatile)
- ThreadPoolExecutor framework
- CompletableFuture / Future / Callable
- ForkJoinPool & specialized pools
- ScheduledExecutor, shutdown vs awaitTermination
- Virtual Threads vs Platform Threads, ThreadLocal