- The primary objective of Java programming language creation was making it simple, secure and portable programming language.
- In Java programming language there are some excellent features which play an important role in the popularity.
- Features of Java are otherwise known as Java Buzzwords.
Features of Java:
Simple :
- Java is very easy to learn and its syntax is easy, simple, and clean to understand.
- In Java there is an Automatic Garbage Collection so no need to remove unreferenced objects.
- In Java syntax is based on C++ which makes easier to write the program in it.
Secure :
- Java is secure because it has features like bytecode verifier, no explicit pointer, automatic memory management that enhances the security of java programs.
- Java also provides Exception handling and which makes it more secured.
Portable :
- Java supports write-once-read-anywhere (WORA) approach.
- In every machine we can execute the Java program and (.java) is converted into (.class)which can be easily runs.
Distributed :
- In Java it is distributedbecause it facilitates users to create distributed applications.
- On internet or network running on one machine can easily access the resources of another machine.
- Remote Method Invocation and Enterprise Java Beans are mostly used for distributed programming.
Multithreaded :
- In multithreaded programming more than two parts of a program can execute simultaneously inside a machine.
- Simultaneously a single program can do two or more than two tasks.
- Simultaneously multithreading is a special form of multitasking. For example, in a multithreaded program you can read a file in one thread and can write into a different file in other thread.
High Performance :
- Compare to another program language Java is faster because bytecode is “close” to native code.
- Java is an interpreted language that is why it is slower than compiled languages like C, C++, etc.
Robust :
- It uses a strong memory management so that it is a strong programming language.
- The concepts like Exception handling, Automatic garbage collection, etc. make it more robust.
Interpreted :
- For program execution Java uses Just-In-Time (JIT) interpreter along with the compiler.
Dynamic :
- Java supports the dynamic loading of classes.
- It also supports functions from its native languages like C++ and C.
Architecture Neutral :
- It does not depend on architecture organization of memory, CPU input/output, processor of a computer.
- It also makes java as an architecture neutral language, something which is not dependent strongly on specific system configuration, bytecode is platform independent.
Platform Independent :
- It needs platform to be executed which is different from other programming languages like C and C++.
- It does not depend upon the operating system to be executed.
Object-Oriented :
- It supports the principles of object-oriented programs like Abstraction, Inheritance, Polymorphism, Encapsulation, etc.
- Java focus on object while other programming languages like C, FORTRAN, PASCAL are focus on logics.