JAVA was developed by Sun Microsystems and released in 1995. It runs on variety of platform such as Mac OS, Windows, and the various versions of UNIX. It was initiated by James Gosling. JAVA is one of the most powerful and object oriented programming language.
Latest release of the Java is Java SE 8. Java guaranteed ‘to Write Once, Run Anywhere’.
Below are the key features which make it different from other:
1.Simple: If you aware about oops concept then it is very easy to use. It is designed to be easy to learn. Its syntax is based on C++.
All the confusing or rarely used key word has been removed. Like explicit Pointers. There is an automatic garbage collection in java so there is no need unreferenced the object.
(As variable declare for datatype similarly object is created for class, enum, structure etc.)
2.Secure: It have various feature which makes him virus free and tamper free system.
For example : there is no explicit Pointer.
Security Manager: it makes sure that object of a class can access legal resources to read and write into the disk
It runs inside virtual machine.
Bytecode Verifier:It has feature as bytecode Verifier to check illegal code that can violate access right to the object.
Classloader:It separate the class object with the local file system from those that are imported network sources.
3.Platform Independent: when program under java compiled, it is not complied into specific machine rather than platform independent byte code. This code is computed over the web and interpreted by the Virtual Machine (JVM) on whichever platform it is being run on.
A platform can be hardware or software environment for which program need to be runs. It is the software based platform which Is better than any other hardware based platforms.
It is having components:
• Runtime Environment
• API(Application Programming Interface)
4. Architecture-neutral – compiler of the java generates an architecture-neutral object file format, which helps the compiled code executable on many processors.
5. Dynamic: It is more dynamic as compare to any other language as it is designed to adopt evolving environment.
6. Distributed − It is designed for the distributed environment of the internet.
We can easily create distributed applications in java. (Remote Method Invocation )RMI and (Enterprise Java Beans) EJB are used for creating distributed applications. We access files by calling the methods from any machine on the internet.
7. High Performance – it uses Just-In-Time compilers as C#, for enables high performance. Since bytecode is "close" to native code.
8. Interpreted – Both the process compilation and interpretation is done for java program. Once java program compiled it is converted to bytecode(which is not the native code.) Then according to machine or computer it is interpreted and converted to machine language which is called as native code.
9. Portable – As java is architecture-neutral and have no implementation dependent aspects of the specification makes Java portable.
10. Robust – Robust means sturdy in construction. Sturdy means powerful. Java makes an effort to eliminate error by emphasizing mainly on compile time error checking and runtime checking. As it uses strong memory management. There is no pointers concept that avoids security problem. Java has automatic garbage collection in java. Exception handling and type of checking mechanism in java. All these points make java powerful.
11. Multithreaded – Java has multithreaded feature. We can write programs that perform many tasks simultaneously. Multithreaded feature allows the programmer to construct interactive applications that can run smoothly.