FEATURES OF JAVA

September 10th, 2006 Admin Posted in Java Features No Comments »

The Features of Java

1.  Simple
2.  Secure
3.  Object-oriented
4.  Robust
5.  Multithreaded
6.  Architecture-neutral
7.  Interpreted
8.  High Performance
9.  Distributed
10  Dynamic
11. Portable
1. Simple:

The fundamental concepts of Java can be grasped quickly. The idea of simplicity, removing everything but the essentials are embraced in it.

2. Secure:

Java was designed as a distributed language. All memory layout decisions are made at run time and naturally depend on the characteristics of the hosting machine. All Java bytecodes are verified as they are executed; this assures that all Java programs follow the rules regarding object access and usage. Verifying all bytecodes also prevents memory underflows or overflows, makes sure that no illegal data conversions are performed, and confirms that all object access is in accordance with the access privileges of the object. A Java environment allow network access to only those hosts from which the code was imported.

3. Object Oriented:

Java was designed from the ground up to be object-oriented. Everything in Java, except the most primitive data types, is an object. With object-oriented techniques, complicated programming problems can be reduced to simple solutions.

4. Robust:

Java includes extensive compile time type checking;  a second level of checking is performed at run time.  Many of the error prone features of C and C++ programming have been removed. Programmers can’t walk off the ends of arrays, either accidentally or maliciously. Java has no pointers, no user memory deallocation, no #defines.

5. Multi-Threaded:

Previously, virtually all computer programs were single-threaded, that is, they could only execute a single set of instructions at a time. Java is designed to support multi-threading. This means that Java applications can do several things simultaneously. Java threads include a sophisticated set of synchronization primitives.

6. Architecture-Neutral

Java is designed to work in a networked environment on a variety of computers and operating systems. Java programs are compiled down to bytecodes — a virtual assembler language which can then be interpreted on any platform.

7. Interpreted:

Because a Java program is compiled down to virtual machine bytecodes, a Java program can execute on any machine on which the bytecode interpreter and run time environment have been implemented. In an interpreted language, program linking is simplified.

8. High Performance:

Because of the extensive compile time type checking and object orientation of the language, the interpreter doesn’t have to check the run time environment constantly.  Garbage collection is automatic and runs as a background thread. Java can also provide just-in-time compilation so that bytecodes can be compiled to native machine code on the fly. This provides a happy balance between portability and performance.

9. Distributed:

Java is designed for the distributed environment of the internet, because it handles  TCP/IP protocols. This allowed the remote procedures execution (Remote Method Invocation).

10. Dynamic:

Java defers as many decisions as possible until run time.  This provides a highly dynamic run time environment. New code can be linked on demand from anywhere on the network and new types can be created as needed. Java can incorporate dynamic protocols. New protocols can be added to the Java environment as they are needed.

AddThis Social Bookmark Button