Since churls Babbage invented first computer and after the release of programming languages, this industry grows rapidly day by day.

If we took over history of computer programming, we saw

1883: computer programming journey start

1949: assembly programming

1957: FORTRAN

1964: BASIC

1972: C

C programming language treated as the father of all today’s modern language like javascript,PHP,python,java etc.

Now question arrives, why Java was created by Sun Microsystems?

The main reason for creating java is..

•In C,C++ are platform dependent that means the combination of os + microprocessor is called platform again we should compile in different operating systems because each os have different compilers

•Coming to microprocessor each electronic posees different microprocessor so it is complicated to design different compilers for different microprocessor then java came into to the existence java is platform independent.

•In java we can compile once and we can run in anywhere i.e compile ones run anywhere the reason for platform independent is when we compile a java code first it will convert into intermediate byte code rather than binary with this byte code we can run our program in. Any operating system.

.Byte code means some intermediate symbols the byte code is only under stable by JVM(java virtual machine)

Why should we need to learn and use Java?

  • Its free for education sector and many times commercially also.
  • Platform independent(windows, UNIX[Mac os,linux])
  • Easy to learn and distribute
  • Robust and secure
  • It’s has many pre-defined functions.
  • Using Java we can build games, web applications, android mobile apps etc.

Let’s make a comparison between java, C++ and python

JavaC++Python
Its a compiled and interpreted programming language.Its a compiled programming language.Its a interpreted programming language.
Java is platform independent from its early days.Its also platform independent.Its also platform independent.
Its has many library support for many purpose like GUI application development.Its has limited number of libraries.Its has huge number of built-in library support for many things like GUI application development, data-science ,networking etc.
Code length is bigger than C++ and pythonIts length less than javaIts length much less than other C++ an java.

Nowadays, maximum number of peoples from many computer based and non-computer based fields chooses python over Java.

Short notes –

  1. If you only wants to execute ‘.java’ file in any machine, that machine should installed ‘jre’ only.
  2. If you/anyone want to develop and tests java programs, then they should have plartform corresponding ‘jdk’ installed.

JRE – The Just-In-Time (JIT) compiler is an essential part of the JRE i.e. Java Runtime Environment, that is responsible for performance optimization of java based applications at run time. The compiler is one of the key aspects in deciding the performance of an application for both parties i.e. the end-user and the application developer.

The JIT compiler aids in improving the performance of Java programs by compiling bytecode into native machine code at run time.

The JRE includes the following components.

  • Code libraries, property settings, and resource files: These include files like charsets.jar, rt.jar, etc.
  • DLL files: Used by Java hotspot client virtual machine and server virtual machine.
  • Java extension files: For Example, files related to locale specification like localedata.jar
  • Files required for security management. For Example, java.policy, java.security
  • Applet support classes.
  • True Type font files: Usually required by the platform

JDK – It provides an environment to java programmer to develop and tests java programs.

The Java Development Kit (JDK) is a distribution of Java Technology by Oracle Corporation. It implements the Java Language Specification (JLS) and the Java Virtual Machine Specification (JVMS) and provides the Standard Edition (SE) of the Java Application Programming Interface (API). It is derivative of the community driven OpenJDK which Oracle steward.

Jdk contains many things like –

  • apt – the annotation-processing tool6
  • extcheck – a utility that detects JAR file conflicts
  • idlj – the IDL-to-Java compiler. This utility generates Java bindings from a given Java IDL file.
  • jabswitch – the Java Access Bridge. Exposes assistive technologies on Microsoft Windows systems.
  • java – the loader for Java applications. This tool is an interpreter and can interpret the class files generated by the javac compiler. Now a single launcher is used for both development and deployment. The old deployment launcher, jre, no longer comes with Sun JDK, and instead it has been replaced by this new java loader.
  • javac – the Java compiler, which converts source code into Java bytecode
  • javadoc – the documentation generator, which automatically generates documentation from source code comments
  • jar – the archiver, which packages related class libraries into a single JAR file. This tool also helps manage JAR files.

Java creator:

James Gosling OC (born May 19, 1955) is a Canadian computer scientist, best known as the founder and lead designer behind the Java programming language.

Gosling was elected a member of the National Academy of Engineering in 2004 for the conception and development of the architecture for the Java programming language and for contributions to Window systems.

Source: https://en.wikipedia.org/wiki/James_Gosling