java-prep
java-prep
java-prep: a tour of Java by modules
A Java interview preparation repo organized as numbered modules, from lambdas and streams to collections, concurrency, Spring, Docker, Kubernetes, Git, and architecture. Each module points at what it covers.
How the modules line up
java-prep is a Java preparation repository organized into numbered modules. A table maps each module to its content. Lambdas cover anonymous functions, functional interfaces, and method references. Streams cover lazy pipelines and intermediate and terminal operations, with exercises to work through.
Collections by category
The module list covers collection types by category. The list category includes ArrayList, LinkedList, Vector, and Stack. The map category includes HashMap, LinkedHashMap, TreeMap, and WeakHashMap. The set category includes HashSet, LinkedHashSet, TreeSet, and EnumSet, and there is a queue category as well. Each entry names the specific classes and interfaces covered.
Concurrency, async, and design
Concurrency modules cover synchronized blocks, volatile, ReentrantLock, Semaphore, and wait and notify. Async modules cover ExecutorService, CompletableFuture, and the allOf and exceptionally methods. Virtual threads on Java 21 are listed as a module, reflecting newer platform features. Design modules cover SOLID principles with violation and correction examples, and design patterns including Singleton, Factory, Builder, Adapter, Decorator, Strategy, and Observer. Spring modules cover core inversion of control, dependency injection, bean lifecycle with PostConstruct and PreDestroy, and Spring Boot. JPA and Hibernate cover entities, relations, fetch types, transactions, and caching.
Infrastructure and tooling
Infrastructure modules cover Docker with images, containers, Dockerfile, and compose. Kubernetes modules cover Pods, Deployments, Services, HPA, ConfigMaps, and Secrets. Infrastructure as code is covered with Terraform and Ansible. Git, Maven, and Gradle build tool modules are included, along with Kafka, microservices patterns, and architecture topics.
Editorial conclusion
As a study map it works. Open the module table, pick a topic, and work through the classes or exercises named there instead of hunting across scattered posts.
Community notes