What is Java programming language?

Java is a very popular high level programming language used by billions of developers worldwide. Java can run on almost all the popular platforms like Windows, MacOS, Unix flavors, Linux flavors and other operating systems. It was developed by Sun Microsystems. James Gosling is considered to be the father of Java. Java was released first time for public in 1995 as core component of Sun Microsystems' Java platform or Java 1.0, J2SE.

Currently Java 18 and Java 17 LTS are available to use as the latest versions. LTS version comes with Long Term Support of 3 years and normal version has support of 6 months. Oracle Corp. releases a new java version after every six month.

Java platform comes under multiple configurations to suit various types of platforms. J2SE for software developers, J2EE for Enterprise Applications and J2ME for Mobile Applications etc. They are also known as Java SE, Java EE and Java ME respectively.

Features of Java

Java is a feature rich programming language. Following are some of the key features of the Java Programming Language.

  • Object Oriented − Java is considered as pure object oriented language. Everything in java is an Object. Java follows object model approach in development.

  • Platform Independent − Java follows Write Once, Read Everywhere principle. As compared to other programming languages like C and C++, Java is not compiled into platform specific machine. it is compiled into platform independent byte code. Java provides platform specific JVM, Java Virtual Machine which then understand the bytecode. Thus developers need not to worry about platform specific java code compilation.

  • Simple − By design, Java is developers friendly. It is easier to learn and master.

  • Secure − Java has provided any security features. It automatically handle memory management, garbage collection and provides various cryptographic libraries to develop encryption based applications.

  • Architecture-neutral − Java compiled code is not dependent on the processor architecture. JRE, Java Runtime Environment reads the platform-neutral code compiled by Java compiler.

  • Portable − As Java is platform independent, architecture-neutral, it is highly portable. Developers can write code in Windows machine and then execute it on Linux machine without any additional configuration or code change.

  • Robust − Java has strict compile time error checking and runtime error checks. Such strict checks prevents error-prone situations and help making a robust application.

  • Multithreaded − Java is multithreaded by nature. It means we can write program which can performs multiple tasks simultaneously. This feature is very useful in interactive applications or heavy processing applications.

  • Interpreted − Java is also termed as an interpreted language. Java utilizes class loaders and linkers to load classes and link them at runtime which makes application rigid and lightweight.

  • High Performance − Java also have compilers as Just-In-Time compilers, to boost performance.

  • Distributed − Internet is a huge distributed ecosystem. Java fits in properly in this system by aligning itself to the needs of distributed system.

  • Dynamic − Java can adapt as per the environment. It is highly configurable. It makes it more dynamic as compared to C/C++. Java programs can utilize run-time information to organic objects at run time in efficient manner.

History of Java

Java development started from Jun'91. James Gosling was working on his Set-top box project and he wanted to develop a language which should be light weight and cross platform. He developed initial version of Java as 'Oak' based on an Oak tree outside his office. Later it was renamed to Green and then finally to Java.

In year 1995, Sun Microsystems announced Java 1.0 as a publicly available language. Java was launched with a concept of Write Once, Run Anywhere. A program written in Java could work on any popular platform without modification of the code.

Then from 13 November, 2006, Sun Microsystems declared Java as Free and Open Source Software under GNU GPL(General Public License). By 8 May'07, Sun Microsystems, all core code of Java programming language on which Sun hold proprietary license, was made open source.