Top Java Interview Topics — Summary, Flashcards & Quiz Flashcards
Master Top Java Interview Topics — Summary, Flashcards & Quiz with these flashcards. Review key terms, definitions, and concepts using active recall to strengthen your understanding and ace your exams.
Swipe to navigate between cards
Front
JVM
Back
Java Virtual Machine executes compiled Java bytecode on the host platform and provides memory management and runtime services. It abstracts the underlying operating system so Java bytecode can be platform-independent.
Front
JRE
Back
Java Runtime Environment supplies the libraries and JVM required to run Java applications but does not include development tools like a compiler. It is what you install on user machines to execute Java programs.
Front
JDK
Back
Java Development Kit includes the JRE plus development tools such as javac, jar, and debugging utilities. Developers use JDK to write and build Java applications.
Front
ClassLoader
Back
A ClassLoader loads class bytecode into the JVM at runtime, following a delegation model by default. It enables dynamic loading and isolation (e.g., webapp classloaders) and can be extended for custom behavior.
Front
Garbage Collection
Back
Garbage Collection reclaims heap memory occupied by unreachable objects automatically, helping prevent memory leaks. Different collectors (G1, CMS, Parallel) offer trade-offs between latency and throughput.
Front
transient
Back
The transient modifier marks a field to be ignored during serialization so it is not persisted into the serialized form. Use transient for non-serializable or sensitive data that should not be stored.
Front
Serializable
Back
Serializable is a marker interface that allows an object's state to be converted into a byte stream for storage or transmission. Implementing it signals that default serialization is acceptable unless custom handling is provided.
Front
equals/hashCode
Back
equals() determines logical equality of objects while hashCode() provides an integer used in hash-based collections. Both must be consistent: equal objects must have equal hash codes to function correctly in HashMap/HashSet.
Front
ArrayList
Back
ArrayList is a resizable array implementation of the List interface providing fast random access and amortized O(1) append. It is inefficient for frequent middle insertions or removals compared to linked structures.
Front
LinkedList
Back
LinkedList implements List and Deque using a doubly-linked node structure, offering cheap insertions and removals at ends or when you have a node reference. It has higher memory overhead and slower random access than ArrayList.
Front
HashMap
Back
HashMap provides key-value mapping with average O(1) performance for get/put using hashing and buckets. It allows null keys and values and is not synchronized by default, so concurrent use requires external synchronization or ConcurrentHashMap.
Front
ConcurrentHashMap
Back
ConcurrentHashMap is a thread-safe Map providing high concurrency without locking the entire map for reads/writes. It uses internal partitioning and non-blocking algorithms to reduce contention compared to synchronized maps.
Front
synchronized
Back
synchronized is a keyword that enforces mutual exclusion on an object's intrinsic lock for a block or method, ensuring one thread at a time executes the protected code. Excessive synchronized usage can lead to contention and reduced scalability.
Front
volatile
Back
volatile ensures visibility of reads/writes to a variable across threads by preventing caching and reordering for that variable. It does not provide atomicity for compound actions like incrementing.
Front
Deadlock
Back
Deadlock is a situation where two or more threads wait indefinitely for resources held by each other, causing a system hang. Prevent deadlocks by ordering locks consistently, using timeouts, or attempting lock acquisition with tryLock.
Front
Lambda
Back
A Lambda expression is an anonymous function that provides a concise way to implement a functional interface, enabling functional-style operations on collections with Streams. It improves expressiveness and supports parallel execution of streams.
Front
Stream API
Back
Stream API provides a fluent, declarative way to process collections and supports intermediate and terminal operations, including parallel processing. Streams emphasize transformations and reductions rather than explicit iteration.
Front
Optional
Back
Optional is a container object that may or may not contain a non-null value, designed to reduce null-checks and NullPointerExceptions. It provides methods like orElse, orElseGet, and ifPresent for safe handling.
Front
Dependency Injection
Back
Dependency Injection is a design pattern where an external container supplies required dependencies to objects, promoting loose coupling and testability. Spring supports constructor and setter injection, with constructor injection favored for mandatory dependencies.
Front
Hibernate
Back
Hibernate is an ORM framework mapping Java objects to relational database tables, managing entity lifecycle (transient, persistent, detached) and providing HQL and criteria APIs. It handles caching, lazy loading, and transaction integration with frameworks like Spring.
Front
Singleton
Back
Singleton is a creational pattern ensuring only one instance of a class exists in the application, often used for global configuration or resource managers. Implement thread-safe singletons using enum type or properly synchronized lazy initialization.
Continue learning
Explore other study materials generated from the same source content. Each format reinforces your understanding of Top Java Interview Topics — Summary, Flashcards & Quiz in a different way.
Create your own flashcards
Turn your notes, PDFs, and lectures into flashcards with AI. Study smarter with spaced repetition.
Get Started Free