What is Java?

What is Java?

Java, a software platform and computer programming language, is one of the most pervasive technologies in the modern world.

Coffee beans

Subscribe now

Get the highlights in your inbox every week.

Java is commonly used to refer to the Java platform, a set of tools allowing for easy cross-platform application development, as well as the Java programming language, which is a general-purpose programming language often used to develop programs for this platform.

The important thing about Java that differentiates it from many other technologies is that it is designed such that code written in Java can be run on any system that a Java virtual machine (JVM) can run on. This concept of write once, run anywhere was used as a slogan to promote Java’s cross-platform abilities. Java environments can be found on all sorts of devices, large and small, and therefore a Java developer has more flexibility when it comes to being able to treat code as agnostic to the system on which it runs.

The Java programming language itself is an object-oriented language, which is syntactically similar to C++. Unlike some other languages which came before it, which implemented classes but did not require their use, Java programs are always designed with an object-oriented design.

While the Java language and the Java virtual machine which runs Java code are closely paired, the two are separate. Code from other languages which is designed specifically for the JVM, like Groovy and Scala, can also run on the Java virtual machine.

Be careful not to confuse Java with JavaScript. While both languages are now found in numerous environments, JavaScript, which is most commonly used to power interactivity inside of a web browser, is a different tool completely. Other than a part of the name, the two don’t share much in common.

What is Java used for?

Java can be found in all sorts of places, perhaps even in your pocket or on your wrist. Android, Linux-derived open source operating system powering millions of mobile devices around the world, uses the Java language along with its own special set of libraries as the basis for mobile applications built for its platform.

You also might be using Java on your desktop without even knowing it. All sorts of applications, from wildly popular games like Minecraft to the Eclipse integrated development environment used by developers for many different languages and platforms, run on Java. Java also powers a number of applications built specifically for the web. While with improvements to JavaScript and HTML, Java applets are no longer the de facto standard for interactive web applications, many still do rely on Java for providing an in-browser interactive experience.

But even though Java isn’t as commonly found as the front-end for web applications these days, it is still a very popular language behind the scenes on many websites and web applications. Through the capabilities of Java Enterprise Edition and open source Java application servers like WildFly and Apache Tomcat, Java has a rich ecosystem of tools for powering and connecting massively scalable applications which keep some of the largest websites and business operations out there up and running.

Is Java open source?

The subject of Java licensing is a long and complicated story, but today, most major components of Java are available under open source licenses, and those which are not available under open licenses typically have drop-in replacements which are open.

Sun, the original developers of Java, placed much of Java under the GNU General Public License in 2006. Projects like IcedTea filled in the gaps for the portions of the Java Development Kit not available under an open license, meaning today, it is possible to run Java applications without using any proprietary code.

Where can I learn more?

In addition to following the Java tag here on Opensource.com, here are some resources you might want to check out.