But, why would someone choose Java over Python? Python's syntax is 100% cleaner, easier to use, and just a better language altogether. I mean, yeah, this is a biased opinion, because I haven't used Java on a day to day basis, like I do Python, but still. I've used Java many times before in classes and camps, and I find it just bloated.
Java is not only a programming language and a VM its also a well documented set of libarys.
Anyhow unless I am a complete retard, I can be pritty certain that any Java program I write using the standard Java Libarys will run on Windows, Linux and MacOS X ( and any other platform that someone has ported the JRE to )
Java is very powerful and bloody easy to use, IMHO.