Java cannot allow pointers, because doing so would allow Java programs to breach the firewall between the Java execution environment and the host computer.
(Remember, a pointer can be given any address in memory—even addresses that might be outside the Java run-time system.)
Java is designed in such a way that as long as you stay within the confines of the execution environment, you will never need to use a pointer, nor would there be any benefit in using one.
In simple way
Java is a more powerful language than c++ where pointer is used. Pointer concept came in c++ because of these reasons.
1. To maintain the support criteria of C where pointer were used.
2.pointer gives security in c++ where in java it is not needed
3. But sometimes pointer creates fault in memory also as it directly play with the memory address of your device which is not good.