Features Of java

Java provides us many features these are nothing but actually set of services or we can say facilities provided by java for java developers, They are also called as Java buzzwords,  Here we will discuss Some important features.


  1. Simple
  2. Secure
  3. Portable
  4. Platform Independent
  5. Object-Oriented
  6. Interpreted
  7. Architecture Neutral
  8. Dynamic
  9. Robust
  10. Distributed
  11. Multithreaded
  12. High Performance

Simple

Java is simple because of the following facts:
  • Syntax in based on C++.
  • There are no pointers in Java, due to this the application Execution time is improved.
  • There is no any concept of Storage Classes, Operator Overloading and Go to Statements and also Java Doesn’t support Multiple Inheritance in the case of classes.
  • There is an Automatic Garbage Collector so we do not need to write code manually to   Remove unreferenced objects: Which are no further required.

Secure

Java is Secure because of the following facts:
  • Java is secure language, It enables us to develop virus-free, temper free Systems.
  • It is not directly executed.
  • First Java code is compiled into an intermediate code called bytecode after that bytecode is converted to machine code by JVM.
  • Java programs always run in Java JVM environment, hence it is more secure.
  • The JVM prevents java source code from generating side effects outside of the system.

Classloader: It dynamically loads Java classes which consist on bytecodes into Java Virtual                         Machine to execute to applications.
Bytecode Verifier: After classloader loads the bytecode into JVM, these bytecodes are first inspected by Bytecode Verifier for Security reasons.

Portable

Java is portable because of the following facts:
  • Portable means able to be easily carried or moved, so Java programs are portable means you can write at one platform(Hardware +Operating   System) and can carry to and run on the platforms which support JVM, that's why it is called Write Once Run Anywhere(WORA).
  • Java is portable due to its JVM.
  • It is the combination of both Platform independent + Architecture neutral.

Platform Independent


Java is Platform Independent because of the following facts:
  • Simply a Platform is a hardware or Software platform in which programs runs.
  • Platform Independent mean you can execute any Java program on any platforms which support JVM.
  • Java source code can be executed on multiple platforms e.g. Linux, Windows, Mac/OS, Sun Solaris, etc. Java code is compiled by the Java compiler and then converted into bytecode. This intermediate bytecode is a platform-independent code because it can be run on a different type of platforms i.e. Write Once and Run Anywhere(WORA).

Object Oriented

Java is Object Oriented because of the following facts:
  • In Object Oriented concept each and everything is considered as an object having states(data) and behaviors(actions)
  • Actions are always performed on data.
  • C++ which is semi-object-oriented whereas the Java is the fully object-oriented programming language.
  It has all OOP features such as Inheritance, Abstraction, Encapsulation, and Polymorphism.
  Here are the main concepts of OOP's.

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

Interpreted

Java is Interpreted because of the following facts:
  • Some programming languages are either compiled or interpreted whereas Java is both compiled or interpreted.
  • Java compiler translates java source code to the bytecodes.
  • Java interpreter executes the translated bytecodes directly on the system that supports the Java Virtual Machine.
  •  Bytecode is interpreted on any platform by JVM.

Architecture Neutral

Java is Architecture Neutral because of the following facts:
  • Architectural neutral which can run on any available processors
  • To execute Java application anywhere on the network which composed of the variety of CPU and operating system architectures.
  • The compiler generates an architecture-neutral object file format.

Dynamic

Java is Dynamic because of the following facts:
  • Java is Dynamic because of bytecode.
  • Java loads its all classes, jars, and libraries from hard drive during runtime and also Java support dynamic binding which is known as
  • Overriding due to these above two major feature Java is considered as dynamic.
  • Allocates memory at runtime using the new operator.

Robust

Java is Robust because of the following facts:
  • Java is Robust because of the following facts:
  • Robust mean Strong.
  • Because of exception handling, automatic garbage collection the lack of pointer concept, handle Runtime Error.All these points make It robust Language.

Distributed

Java is Distributed because of the following facts:
  • Java was designed with the distributed environment to mean can run on multiple platforms across the network.
  •  Distributed applications are created in Java using RMI and EJB.
  • In Distributed Systems object running on one machine can access methods of another object running on another machine.

Multithreaded

Java is Multithreaded because of the following facts:
  • A thread is a separate small program or specific task executing concurrently.
  • Java is called multithreaded because runs multiple threads concurrently in a single program which perform different tasks.
  • Threads share the same memory.

High Performance

Java is High Performance because of the following facts:
  • Java has high performance due to a just-in-time compiler(JIT).
  • Using Bytecode which is faster than ordinary pointer code.
  • Garbage collector which removes the unused space automatically.
  • The dynamic binding which is known as overriding due these above two major features of  Java is considered as dynamic.
  • Allocates memory at run-time using the new operator.


1 comment: