Why Choose Java?
Java is suited to creating general business programs rather than low level drivers, performance critical or operating system code. Typically it is used for accessing databases or writing networking systems. Some of the main alternative languages to Java are C++, Visual Basic and the new language from Microsoft called C#. You will sometimes see a description of a language as C/C++ because C and C++ are closely related. C++ compilers will generally compile any valid C language but most developers take advantage of the Object Oriented nature of C++.
C++ has a reputation for being able to create lower level programs than Java or Visual Basic and so is a natural choice if you are programming drivers or anything that involves getting "close to the metal" where performance is at a premium. Most programming is not of this type however and C++ does not come with a standard set of libraries for creating graphical programs. The main libraries for creating graphical programs are the Microsoft Foundation Classes (MFC), but selecting MFC will restrict portability. C++ and MFC are generally considered much harder to learn than either Java or Visual Basic.
Visual Basic is probably slightly easier to learn than Java and although it is strictly a Windows platform it comes with tools for most of the popular business requirements. It can can connect to most databases, and can create most types of graphical widget required for standard business applications. Visual Basic suffers from its heritage as a descendent of the original BASIC programming language in that the primary purpose of the original language was that it should be easy to use, rather than being optimised for software engineering.
The C# language is the joker in the pack when selecting a language because Microsoft recognised that Java included some very good ideas and "borrowed" many of the concepts to produce a new language that blended many of the virtues of C++ and Java. Although there are projects to make C# available on platforms other than Windows, the main platform at the moment is Windows and for commercial purposes it should probably be considered non portable. The good news is that C# is sufficiently like Java that if you learn the one it will not be hard to learn the other. By contrast Visual Basic has very little in common with C/C++ or C#.