OutOfMemoryError in Java Explained

Understand OutOfMemoryError in Java why it happens how to diagnose memory leaks and how to fix or tune the JVM for stable apps