Question: I just wanted to know which language has better memory management among C,C++ and Java,why is it so and it is based on what criteria? 

I know that Java uses garbage collection for freeing memory and C uses DMA functions.Does this make java better at memory management since it's handled automatically? I do not know C++ so I don't have much idea there,though I know it uses destructors and delete.

Any suggestions/ideas will be grately appreciated.

Answer: 
Java has memory management. C and C++ don't, so it's memory management is a function of the programmer.
Programmer managed memory in c and c++ is the root cause of many software bugs in programs written in those languages. This is one of the main reasons modern languages like Java and C# have garbage collection.