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
Java is not platform independent
Because it doesn't rely on pointers