Java is platform independant and c++ is not. Java is easier to learn and use that c++ making it less expensive for a company to invest in. I guess the lack of pointers is a big contributer to this. Java is less prone to difficult to solve bugs (probably due to above) - this is just hearsay. You can get a Java Compiler and RTE for free. JavaRanch is more fun than any c++ site that I have found.
"JavaRanch, where the deer and the Certified play" - David O'Meara