Features of Java Language

The main objective of Java Programming language creation was to make it portable, simple and secure programming language. 

The following features of Java language are-

Simple

  • Java is easy to learn and its syntax is quite simple, clean and easy to understand.
  • Java derives its syntax from C and object-oriented features from C++.
  • Java has removed many confusing and rarely-used features e.g. explicit pointers, operator overloading etc
  • There is no need to remove unreferenced objects because there is Automatic Garbage Collection in java.

Object-oriented

  • Java is object-oriented programming language. Everything in Java is an object.
  • Object-oriented means we organize our software as a combination of different types of objects that incorporates both data and behaviour.
  • Java can be easily extended as it is based on Object Model.

Basic concepts of OOPs are:

  1. Object
  2. Class
  3. Inheritance
  4. Polymorphism
  5. Abstraction
  6. Encapsulation

Platform Independent

  • Java is platform independent because it is different from other languages like C, C++ etc. which are compiled into platform specific machines while Java is a write once, run anywhere language.
  • A platform is the hardware or software environment in which a program runs.
  • There are two types of platforms software-based and hardware-based. Java provides software-based platform.

    The Java platform differs from most other platforms in the sense that it is a software-based platform that runs on the top of other hardware-based platforms. It has two components

          (1)Runtime Environment

          (2)API(Application Programming Interface)

 

Secured

When it comes to security, Java is always the first choice. With java secure features it enable us to develop virus free, temper free system. Java program always runs in Java runtime environment with almost null interaction with system OS, hence it is more secure.

Java is best known for its security. With Java, we can develop virus-free systems. Java is secured because:

  • No explicit pointer
  • Java Programs run inside virtual machine sandbox

 

Robust

  • Java makes an effort to eliminate error prone codes by emphasizing mainly on compile time error checking and runtime checking
  • It uses strong memory management.
  • There are lack of pointers that avoids security problems.
  • There is automatic garbage collection in java which runs on the Java Virtual Machine to get rid of objects which are not being used by a Java application anymore.
  • There is exception handling and type checking mechanism in java. 

 

Architecture-neutral

Compiler generates bytecodes, which have nothing to do with a particular computer architecture, hence a Java program is easy to intrepret on any machine.

Portable

Java Byte code can be carried to any platform. No implementation dependent features. Everything related to storage is predefined, example: size of primitive data types

High-performance

Java is an interpreted language, so it will never be as fast as a compiled language like C or C++. But, Java enables high performance with the use of just-in-time compiler.

Distributed

Java is distributed because it facilitates users to create distributed applications in java. RMI and EJB are used for creating distributed applications. This feature of Java makes us able to access files by calling the methods from any machine on the internet.

Multi-threaded

Java multithreading feature makes it possible to write program that can do many tasks simultaneously. Benefit of multithreading is that it utilizes same memory and other resources to execute multiple threads at the same time, like While typing, grammatical errors are checked along.

Dynamic

Java programs carry with them substantial amounts of run-time type information that is used to verify and resolve accesses to objects at run time.