Java overview

Hey guys!! Welcome to flower brackets blog. Today in this post we are going to learn java overview.

java overview

Java was developed by James Gosling at Sun Microsystems Inc. and released in 1995 as core component of Sun Microsystems’ Java platform (Java 1.0 [J2SE]).

Java is one of the world’s widely used computer languages and it’s latest release is Java SE 8.

Due to its vast popularity, diverse configuration it has been built to suit different platforms like J2EE for Enterprise Applications, J2ME for Mobile Applications.

What is java?

Java is

  • dynamic. It’s an object oriented programming language.
  • architecture-neutral. With Java Runtime, compiled code is executable on many processors.
  • simple, portable, secured, robust and high level platform language.
  • secure and helps in developing virus-free systems.
  • enables high performance with the use of Just-In-Time compilers.
  • Java compiler is written in ANSI C with a clean portability, which is a POSIX subset.
  • has its own Java Runtime Environment(JRE) and Application Programming Interface(API), called platform.
  • With multithreaded feature we can write programs that can perform many tasks simultaneously.
  • key component Java Virtual Machine(JVM) allows java code to run on your machine.
  • designed for distributed environment.

For now let’s go over each point in more detail,

So, what does it mean to be a high-level programming language?? This means that the java source code is written in plain text or human readable format.

Java files are saved with dot java(.java) extension like other normal languages like english. Java has a set of rules on how it should be written and this is known as syntax.

Java can be extended easily since it is based on Object model and everything is an Object.

As a beginner if you look at the java code it would probably resemble a mix of english and mathematics. This makes java very easy to understand  and read the code.

Also read – preface to java virtual machine and architecture

Meanwhile it helps to contribute to the next point, that is, simplicity. As mentioned before, part of the java simplicity comes from the fact that it’s a high-level programming language which makes easy to read and understand.

There are also a lot of predefined libraries in java that can be used. This allows developers to quickly write and leverage this large library.

For example, these libraries allow you to do fairly common tasks such as manipulation. So, we do not have to worry about the complexities of manipulation.

Some of the other benefits that java has over other languages such as C language, is that developers don’t have to worry about memory management.

Also read – java garbage collection

Anything you create in your code will take up memory and with java you don’t have to manually allocate memory yourself.

Java will automatically reserve the needed amount of memory for your application and also automatically get rid of unused variables from memory thanks to its built-in automatic garbage collector.

Basic java concepts : java overview

As we will see in our next point about ability, the code written on one machine is guaranteed to work on any other machine that can run java.

This allows you as the developer to focus solely on the code. Let’s understand it in detail on what makes java supportable.

Java Overview

Remember Java Virtual Machine(JVM) that I mentioned in previous paragraph, it’s really the key that makes java portable.

When java is compiled, it is not compiled to platform specific machine, rather into platform independent bytecode.

Also read – class and objects in java

When you are done writing your code you need to compile it using java compiler to a dot class file.

This file is a non-human readable file and chances are your machine will not be able to understand it either.

So what’s the point of this file??

Java Overview

This file actually contains byte code which you can think of as a language that only the JVM can understand.

JVM then translates this into a language that your machine can understand.

Also read – variables in java

You can think of the java compiler as a translator between your code and the JVM and the JVM as the translator between your compiled code and your machine.

Then the byte code is distributed over the web and interpreted by the Java Virtual Machine on the platform it is being run on.

You may have noticed when first downloading at different versions for each major operating system you can think of these as different translators for each operating systems.

Also read – java features

This provides great flexibility for developers because if the code compiles and runs on one machine it will compile and run on any other machine with java installed.

Bytecode in java is translated on the fly to native machine and is not stored anywhere.

Java is an object oriented programming language. This is usually called as OOP for short. What this means is that, it is a style of programming.

In OOP we put related state and behavior into entities known as objects. This is very similar to real world where you can think of things like motorcycle or car as objects and they have states like engine on and engine off and behavior like moving and parking.

These objects can also communicate with each other. This allows for objects to interact with each other and leverage each other related functions that’s unique to that class.

If used properly this can lead to reusable and easy to maintain code. OOP is a large topic so I’ll stop here for now but you should have understood the essence of what OOP is.

Now we will move on to a simple java example, types of java application and uses.

class Simple
   public static void main(String args[])
      System.out.println("Hello Java"); 

Output :

Hello Java

Types of java application

  • Web Application
  • Enterprise Application
  • Mobile Application
  • Standalone Application


  • Games
  • Banking Applications
  • Robotics
  • Widely in android mobile
  • Antivirus
  • Adobe Acrobat

Related Posts