People often describe Java by comparing it to C++. In many ways, one could say it is a successor to the older programming languages. Java automatically handles the reclamation of memory (garbage collection) and has various other features that eliminate all classes of bugs. While C++ maintained compatibility with the older C language, Java can be seen as abandoning the C legacy, fully embracing the principles of object-oriented programming.
You must know at least the basics of how to use a computer, and should be able to start a command line shell.
If you are new to programming then Introduction to Programming is strongly recommended.
If you already know C++ or any other Object-Oriented language, Java should be easy to pick up.
Pros and Cons of Java
Pros
- is an extremely popular language
- Gaining more and more popularity, lately
- Has a rich set of standard library classes
- Has a large base of freely accessible source code
- Moderately easy to learn. Far easier if you’re good with C or C++
- Java programs are often portable amongst major Operation Systems such as Linux, Windows, and Mac
- Is often very easy to decompile
Cons
- Is not as powerful as a language like C, C++, or Assembly in that it cannot easily access low-level functions such as are needed for device driver programming (This functionality is only need in specialised situations)
- Often runs too slowly on older computers to be as easily usable as a program written in a language like C or C++
- Requires a rather hefty runtime environment to run: The Java Runtime Environment (~30MB)
The Java Runtime Environment’s standard library classes are extensive enough that neophytes can be confused and/or intimidated. On the other hand, they also are a tremendous resource and can save a considerable amount of time.
