It is a robust, object-oriented language useful for applications, web-based programs & communications
Its rather unique Java virtual machine (JVM) compiles (converts) the Java source code (*.java) into Java bytecode (*.class), which is conveniently interpreted into the native machine code & executed (*.exe) on all Java platforms
Literally, "write once, run always"
Entirely born & grown with the Web
What are its weaknesses?
Its execution speed is much slower than native codes of C++, Fortran, etc. in return for its versatility & flexibility
Java VM is an interpreter, thus executing single code lines, unlike compilers
Graphical abilities are better than other numerical languages, but inadequate in comparison to true graphical languages
What can Java be used for?
Any language must be used to exploit its strengths & avoid its weaknesses
Java has become a programming phenomenon for unprecedented acceptance, growth & popularity due its adaptability & applications to Web, mobile and educational technologies
Its uses include enterprise, education, training, networking, communications, wireless technology, etc. New uses are being explored all the time
Web functionality, applications and versatility are being added at warp speed
Is Java difficult to learn?
Ask yourself why and what it is that you want to learn Java – the difficulty of learning = f(user context, language environment, available help)
I feel it’s best that you have a need or use for Java in order to learn it purposefully & thoroughly – no point wasting your efforts to prove programming prowess
Having a favourable user context is insufficient, Java needs to be learnt in a conducive environment, providing support when necessary
Due to its growth on the Internet, online help & resources are readily available, not to mention your buddies
The Java language basics & features can be considered medium; See Java as a modular, networking framework & you have no problems
Where can I learn Java?
Resources like friends, books, magazines & the Web