Wednesday, May 22nd

Last update12:59:40 PM GMT

Java Refresher I

Write e-mail

Java is a simple, yet powerful object oriented programming language and in many respects it is similar to C++. Java was created in 1991 by James Gosling, Patrick Naughton, Chris Warth, Ed Frank, and Mike Sheridan at Sun Microsystems, Inc.


The original motivation for creation of Java was the need for a platform independent language that could be used on any operating system and embedded in consumer electronic products like toasters and refrigerators. One of the very first projects developed using Java was a personal hand-held remote control named Star 7.

Java Virtual Machine

The main design concept, which is the base of Java, is ‘write once and run everywhere’. Java Virtual Machine, which plays the central role, is the environment in which Java programs execute. It is much like a software, implemented on top of real hardware and operating system. After the compilation of the source code (.java files), it is translated into byte codes and then placed into (.class) files, which is created at the same place as java source file. And for the execution of an application, JVM executes the bytecodes. So, we can say that JVM is provided with the machine language as Java byte codes. In order to support this platform independency, JVM must be implemented on the platform before we can run the compiled programs on it.

The main features of the Java language are:

Platform independent

Unlike C and C++ and many other programming languages, Java is compiled into platform independent byte code, rather than into platform specific machine. This byte code generated after compilation is interpreted by virtual Machine (JVM) on whichever platform it is being run, and distributed over the web.

Distributed Language

With the help of existing java API and other extension APIs methods to handle TCP/IP protocols such as FTP, HTTP and etc., java can read, open and access the objects across net via URLs.

Multithreading Support

One of the most powerful features of the Java language is that it supports execution of multiple threads, which run simultaneously within the same program. Different threads can execute continuously and independently in a single java program.


While design Java, one of the main concerns was to make it secure across the network, and in order to follow the same, most of the features of the C/C++ were eliminated. There are no pointers in Java like C/C++, and arbitrary addresses in memory can’t be accessed by Java programs.

Garbage collection

Another great feature of Java is automatic garbage collection, which is a memory management feature and makes sure that the heap has as much memory free as possible. In order to allocate memory for a new object, Java has a new operator similar to C/C++. But unlike C/C++, it doesn’t have delete operator and this deletion is done automatically with garbage collector by Java. The downside to automatic garbage collection is, that you don’t know when JVM runs it.

Java Applications

Java has evolved from a simple language providing interactive dynamic content for web pages to a predominant enterprise-enabled programming language suitable for developing significant and critical applications. Today, it is used for many types of applications including Web based applications, Financial applications, Gaming applications, embedded systems, Distributed enterprise applications, mobile applications, Image processors, desktop applications and many more. This site outlines the building blocks of java by stating few java examples along with some java tutorials.


Share this post

Add comment

Please refrain from using slang or abusive language in the comments.
To avoid waiting for your comment to be published after being reviewed, please log in as a registered user.

Security code

Web Hosting