Features of Java Programming









Java Features or Buzz Words:





  1. Simple

  2. Secure

  3. Portable

  4. Object-oriented

  5. Robust

  6. Multithreaded

  7. Architecture-neutral

  8. Interpreted

  9. High performance

  10. Distributed

  11. Dynamic








We discuss about these words
how java supported.





Simple: java is simple to
write program and easy to learn if you understand the basics of OOP. Because it
was acquire some object oriented features from C/C++ languages.







Secure:  Java is secured
programming language with its secure features and it enables to develop
threat/virus free systems. Java is intended to work in networked and
distributed environments by providing security. All the references to memory
are symbolic references, meaning that the user is not aware where in the memory
program is present,  it totally depends
on the JVM and Machine on which the program is running. Java is strongly typed language which means
that variables should be declared and variables should not change types.







Portable:  Java
is portable because its architectural neutral and having no implementation of
dependent aspects of the specification. 







Architectural-
Neutral
: Java compiler generates an object file format which is executable on
many processors, with java runtime. This makes java is Architectural Neutral.





Object
oriented
:  Java is a pure object
oriented programming language. In java everything is represented in an object
form. Java can be easily extended since it is based on object model.


Robust:  Java provides checking
for possible problems at two levels, one at compile time and the other at the
run time, so programmers are highly reliable and eliminate situations that are
error-prone compared to other programming languages like c/c++. Java provides
powerful and robust exception handling mechanism which to deal with both checked
and unchecked exceptions.





Multithreaded:  Before answering
what is multithreading, let me explain you what ‘thread’ is. Simply, a
thread is a program’s path of execution. In your problems, when multiple
events or actions need to occur at the same time, how you will handle it? For
example, a program is not capable of drawing pictures when you keep pressing
keys of the keyboard. The program gives its full attention to receiving the
keyboard input and doesn’t draw the picture properly. The best solution to this
problem is the execution of two or more sections of a program at the same time
and this technique is known as multithreading.





It is an
ability to execute more than one program concurrently or simultaneously. Java
is inherently multi-threaded, for example garbage collection subsystem
runs as alow-priority thread.  A single
Java program can have many different threads executing independently and
continuously, for example, different Java applets on the same web page can run
together with getting equal time from the processor. Because multithreaded
applications share data and all threads of an application exists in the same
data space therefore to maintaining reliability is sometime difficult. To
making easy the use of threads Java offers features for synchronization between
threads. 







Dynamic: Java is
considered to be more dynamic than C or C++ since it is designed to adapt to an
evolving environment. Java programs can carry extensive amount of run-time
information that can be used to verify and resolve accesses to objects on
run-time.





Distributed: Java is designed
for the distributed environment of the internet.





High Performance: As we know
in Java we have to first compile the program, then execute it using Java


Interpreter.  In general, interpreters are slow, because an
interpreter executes programs instruction by instruction while Java is a
fast-interpreted language. Java has also been designed so that the run-time
system can optimize their performance by compiling byte code to native machine
code on the fly (execute immediately after compilation).


This is called “just in
time”
(JIT) compilation.





Platform Independent: Java is Platform independent.  The meaning of platform here may be confusing
for
you but actually this word is
poorly defined. In the computer industry it typically means some combination of
hardware and system software but here you can 
understand it as your operating system. Java is compiled to an
intermediate form called Java byte-code or simply byte code. A Java
program never really executes immediately after compilation on the host
machine. Rather, this special program called the Java interpreter or Java
Virtual Machine reads the byte code,
translates it into the corresponding host machine instructions and then
executes the machine instruction. A Java program can run on any computer system
for which a JVM (Java Virtual Machine) and some library routines have
been installed. The second important part which makes Java portable is the elimination of hardware
architecture dependent constructs. For example, Integers are always four bytes
long and floating-point variables follow the IEEE 754.You don’t need to worry
that the interpretation of your integer is going to change if you move from one
hardware to another  hardware like
Pentium to a PowerPC. You can develop the Java program on any
computer system and the execution of that program is possible on any other
computer system loaded with JVM.
Java is a rich programming language.







Execution and Compilation of Java Program



Compilation and execution of Java Program on Various Platforms














Post a Comment

Previous Post Next Post