Because it doesn't rely on pointers
Java is not platform independent
It translates the source code into byte code first that cun run on any platform with the JVM
Java can directly run on any platform