What are the main differences between == and .equals() in Java?
(Covers object comparison and string handling.)
Explain how Java achieves platform independence.
(JVM, bytecode, JIT compilation.)
What is the difference between ArrayList and LinkedList?
(Performance trade-offs, memory usage, internal implementation.)
What is the difference between final, finally, and finalize()?
(Covers keywords, exception handling, garbage collection.)
What are checked and unchecked exceptions in Java?
(Difference, examples, best practices for handling.)
How does Java handle memory management and garbage collection?
(Heap, stack, GC algorithms, System.gc().)
What is the difference between abstract class and interface?
(Default methods in Java 8+, multiple inheritance issues.)
Explain how multithreading works in Java. How do you create a thread?
(Extending Thread vs implementing Runnable, thread lifecycle.)
What is the difference between HashMap, TreeMap, and LinkedHashMap?
(Ordering, performance, use cases.)
What are Java Streams and how are they different from Collections?
(Functional programming, lazy evaluation, parallel streams.)