Pre-requisites

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.

Leave a comment