The prime reason behind creation of Java was to bring portability and security feature into a computer language. Beside these two major features, there were many other features that played an important role in moulding out the final form of this outstanding language. Those features are :
- Object Oriented
- Platform Independent
- Multi Threading
- Architectural Neutral
- High Performance
1. Simple ⤴
Java is easy to learn and its syntax is quite simple, clean and easy to understand.
Eg : Pointers and Operator Overloading are not there in java but were an important part of C++.
2. Object Oriented ⤴
In Java, everything is Object which has some data and behavior. Java can be easily extended as it is based on Object Model.
3. Robust ⤴
Java make an effort to eliminate error prone codes by emphasizing mainly on compile time error checking and runtime checking.
But the main areas which Java improved were Memory Management and mishandled Exceptions by introducing automatic Garbage Collection and Exception Handling.
4. Platform Independent ⤴
Unlike other programming languages such as C, C++, etc. which are compiled into platform specific machines. Java is guaranteed to be write once, run-anywhere language.
On compilation, Java program is compiled into bytecode. This bytecode is platform independent and can be run on any machine, plus this bytecode format also provide security. Any machine with Java Runtime Environment can run Java programs.
5. Secure ⤴
When it comes to security, Java is always the first choice. Java program always runs in Java runtime environment with almost null interaction with system OS, hence it is more secure.
6. Multi Threading ⤴
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.
7. Architectural Neutral ⤴
Compiler generates bytecodes, which have nothing to do with a particular computer architecture, hence a Java program is easy to interpret on any machine.
8. Portable ⤴
Java bytecode can be carried to any platform.
9. High Performance ⤴
Java is an interpreted language, so it will never be fast as a compiled language like C or C++. But Java enables high performance with the use of Just-In-Time compiler.