Java is a product of Sun Microsystems that was created to curb the popularity Microsoft was enjoying where corporate computing systems were concerned
. Though Sun was the dominant player in the early 1990s and held a major market share, however it did start to notice a gradual decline in the market share. This prompted them to release Java for Windows and Solaris platforms. JVM is the main core of Java and its main advantage is its extreme portability. This means, that the software can be hosted on any system and JVM can further run any software that is written in Java. However, this is not the case with .Net that works on Windows primarily and may only theoretically support development in other languages.
Though Java and .Net are used quite extensively, the choice of making a decision on which one to choose depends on the requirements a particular organization may have. However, on close inspection there seems to be quite a number of advantages attached to the usage of Java more than .Net. Java API are part of the public domain and the Java source code are available in almost every J2DK distribution. In fact most of the specifications related to Java are reviewed publicly and there are vendors who provide products that are compliant with a number of development environments.
Another factor that contributes towards Java being a better platform is that Java has a far greater number of design tools available than the .Net platform. .Net is also not a completely established platform, as it still poses a number of challenges to the developers and it would take some more time for .Net to overcome. Therefore, in totality, .Net can become the preferred option in the future but right now, it is Java that dominates