This is regarding memory leak in Java.
I want to know,
What is exactly memory leak in java?
What are the different factors or code mistakes due to which memory leak happened?
How can I identify memory leak in given code?

These are mostly question get used to ask in interview and I want to know about these in detail. Can someone please explain and help me.