Features of Java | Introduction to Java
Here we are again with the continuing episode of the Java
section that we have started. Last time the post was about the history,
background, creation, evolution, features and introduction to java programming. The post was an in detail
description of the history of java programming language. We tried to cover all
the topics such as the need of java language, the cause of the creation of java
language, how was the java language created and what purposes does it serve,
how it evolved and what were the characteristics and special features of the
java language. The java language is of quite importance in the industry so we
will try to give a detailed description and knowledge related to the java
programming language. Talking about the features of Java language, in the last
post we discussed only a few features of the java language. As you all know,
the greatest feature or you can say advantage of the java language
is that it is a platform independent programming language. It can run on
various platforms which means that no matter if you are a Windows user, Apple
user or Linux users Java applications won’t be a problem. A very important
feature in terms of security is the Java Bytecode. As mentioned in the last
post, the output of a java compiler is not an executable code rather it is a
Bytecode. The bytecode is not executed it has to be interpreted by a Java Virtual
Machine (JVM). This solves the issues of security that one might face. And how
it solves the security issue is mentioned in the last episode of Java, you can
see it there. Well, we have presented a brief review of the last post just to
freshen up your memory, so that you can understand and join the two posts
better.
What we will be presenting today is a detailed post on the
features of the Java and the factors that led to the creation of Java
programming language. The main factors that led to the creation of Java
programming language were:
·
Portability
·
Security
Other than this there were many other factors that played an
important role according to the Java team. You may find the names of these
factors written in many books and at many places as they were the one’s
provided by the Java team itself.
Object Oriented
One thing that should be understood till now is that the
Java programming language was not designed to be a source code. It was not
designed to be backward or forward compatible with any other language. This
gave freedom to the Java team and as a result there was a clean, secure and
portable language. Everything in Java is considered an object except simple
types such as integers etc. This object approach proved very successful.
Robust
Another important key feature is the Robustness of the Java
programming language. No doubt Java is a Robust programming language. As the
Java language had to be used for the Web and to meet the needs of the web it
had to be robust, so that it can execute reliably on any platform. As Java is
an efficient and reliable language, to gain its reliability the Java
programming language at the same time facilitates you and restricts you from
certain things.
Strictly typed language
Let’s talk about the restriction which the Java programming
language imposes on us. Java is a strictly typed language. The code written in
Java should be perfect in terms of syntax. Loosely typed code won’t be
tolerated. The Java code is checked at compile time as well as run time. Due to
this quality of Java many unexpected bugs and errors are not created.
Memory management
The way in which the Java programming language facilitates a
programmer is the Memory management. In other language such as C and C++ the
memory management is done by the programmer itself. The programmer himself has
to allocate and de allocate dynamic memory. What may happen is that the
programmer may forget to free up the memory that has been allocated in the past
or the programmer may free a memory that is still being used. This is not the
case in Java. Java programming language manages the memory for you. Memory
allocation and de-allocation is done by Java itself. There is garbage
collection in Java for unused objects.
Dynamic
Java is a dynamic language it links code dynamically. The
Java program has some run time information along with it so that the accesses
to objects at run time may be resolved. This is important for the applets,
because they update small fragments of code at run time.
Multithreaded
Java programming language supports multithreaded programs,
which allows us to write program and do many other things at the same time. The
java run time system comes with a decent solution for multiprocess
synchronization so that you don’t have to worry about anything. As Java was
designed for creating interactive networked programs.
Cross platform
This thing is the highlighted feature of the java
programming language and I think you people are now well aware of this feature.
As we have discussed this many times in the previous post as well as in this
one. The Java team wanted to build a code that could run anywhere at any time.
They wanted to create a code that was once created and created for good. The
changes in operating system and hardware may not affect the code. And they
succeeded in doing so.
Bytecode benefits
As discussed earlier that the output of a Java program is
the Bytecode that is not executable. A Bytecode is interpreted rather than
being executed by a Java Virtual Machine (JVM). This was not the first attempt
to create a cross platform language. Before Java many other interpreted systems
such as BASIC, Tel and PERL were present but they faced performance deficits.
Contrary to this Java was designed to work on very low powered CPU’s.
Performance issues were not faced by the Java language as it could be interpreted
into the machine code on very low power CPU’s.
Simplicity
Java is a simple language.
It was designed in such a way that the programmers could adopt it
easily. If you have any prior experience in programming, you know any
programming language then Java is no big deal for you. In fact if you are a
programmer of C and C++ then shifting to Java won’t be difficult. As Java has
inherited its syntax and the object oriented property from C and C++. Basically
shifting to a new programming language, it’s only the syntax that matters the
rest is almost same everywhere.
Distributed
Internet is a distributed network and as you know Java was
designed for the web. It handles protocols. Accessing a resource from a URL may
not be much different than accessing a file. The earlier version of Java known
as Oak had the intra address space messaging. Due to this objects present on
two different computers could execute remotely.
Well this is all for Java today, we have discussed in detail
the factors and features of Java. I think that you all may be well aware of the
Java language now. What is Java language, why was it created, when was it
created what purposes did it serve all such questions have been answered. Now
you know much about Java.
Keep following the Tech section of this blog to keep
yourself updated. And don’t forget to subscribe. Enter your email at the top of
this page and we will keep you informed about all the posts.
Comments
Post a Comment