Saturday, 6 July 2013

All Java Versions

J2SE:

            JDK 1.0 (January 21, 1996) Java Development kit

            JDK 1.1 (February 19, 1997)

            J2SE 1.2 (December 8, 1998) Java Standard Edition

            J2SE 1.3 (May 8, 2000)

            J2SE 1.4 (February 6, 2002)

            J2SE 5.0 (September 30, 2004)

            Java SE 6 (December 11, 2006)

            Java SE 7 (July, 2011)

            Java SE 8 (March, 2014)

            Java SE 9 (Sep 21, 2017)

            Java SE 10 (March 20, 2018)

            Java SE 11 (Sep 25, 2018)

            Java SE 12 (March 19, 2019)

            Java SE 13 (Sep 10, 2019)

J2EE:

            JPE (May 1998) Java Professional Edition

            J2EE 1.2 (December 12, 1999) Java Enterprise Edition

            J2EE 1.3 (September 24, 2001)

            J2EE 1.4 (November 11, 2003)

            Java EE 5 (May 11, 2006)

            Java EE 6 (Dec 10, 2009)

            Java EE 7 (May 28, 2013)

            Java EE 8 (Aug 31, 2017)


Differences between Java Compiler,JIT Compiler,Java Interpreter



Java Compiler->Java compiler just convert .java programs into .class files,

                   that means converting our source code into byte code.

JIT Compiler->JUST IN TIME COMPILER is the part of the Java Virtual Machine (JVM)

                   that is used to speed up the execution time. JIT compiles parts of the byte code

                   that have similar functionality at the same time, and hence reduces the amount of

                   time needed for compilation. Here the term “compiler” refers to a translator from

                   the instruction set of a Java virtual machine (JVM) to the instruction set of a specific CPU.

Java Interpreter->JAVA INTERPRETER converts total Byte code into machine dependent code,

                   If JVM use only interpreter the performance of JVM will slow,

                   so JVM uses JIT compiler and Interpreter both.


Differences between JDK,JRE and JVM



JDK->JAVA DEVELOPMENT KIT is used to develope the java programs,

         It creates the environment in our machine to develope java programs.

         JDk includes compiler,this compiler converts our source code(.java) to byte code(.class).

JRE->JAVA RUNTIME ENVIRONMENT is used to run the java programs(.class).

         JRE is the implementation of JVM,So JVM internally uses JRE to execute programs.

JVM->JAVA VIRTUAL MACHINE convert byte code to different machine dependent codes,

         JVM interanlly uses JRE.JRE is the implementation of JVM,

         JVM implementation is depends on OS.

      ->Responsibilties of the JVM

         To load the code

         To verify the code

         To Convert the code

         Execute the code


How the Java Programs are Executing?



->First our program(.java) will convert into byte code(.class) by using java compiler.

->After that Byte code(.class) will convert into machine dependent code by using JVM,

     JVM internally uses JIT compiler and INTERPRETER.