Most of the pointer related manipulation is done implicitly by the JVM and only references are used by the program. This is in order to abstract the memory from the overall application program in order to keep it safe from corruption, insecure access, etc memory related problems.
Safety and Security:
Pointers can lead to memory corruption and security vulnerabilities if misused.
By avoiding direct memory access, Java prevents issues like buffer overflows and unauthorized memory manipulation.
Simplicity and Readability:
Removing pointers makes Java code easier to read, write, and maintain.
Developers can focus on solving problems without worrying about memory management details.
Automatic Memory Management (Garbage Collection):
Java uses an automatic garbage collector that handles memory allocation and deallocation.
Since memory is managed internally, there’s no need for explicit pointer manipulation.