Stack overflow: quá nhiều method call (đệ quy sâu) làm cạn kiệt stack memory — StackOverflowError xảy ra nhanh và rõ ràng (stack trace hiện rõ đệ quy sâu).
- Stack nhỏ, giới hạn per-thread.
- Heap overflow: quá nhiều object làm cạn heap —
OutOfMemoryError, GC chạy trước rồi mới throw, performance giảm trước khi crash. - Heap overflow khó diagnose hơn, cần profiling/heap dump.
- Phòng tránh stack overflow: tránh đệ quy sâu, dùng iteration; phòng heap overflow: quản lý object creation, fix memory leak.