Java development: Various versions of JDK new features JVM development Java Technology application development __java

Source: Internet
Author: User
Tags xml parser http 2 java se

The Java Platform System: the composition of the structure of the operating mechanism JRE/JDK/OPENJDK Java se/ee/me Java Advantages We have a comprehensive understanding of the Java platform System.

The following is a brief introduction to the history of Java development, and then, on the basis of the entire history, extract a few points of interest timeline, describing the new features of each JDK version, JVM development, and application development of Java technology. 1. Introduction to Java Development history

May 23, 1995, the rise of the Internet, oak renamed as the birth of Java,java language, proposed "a compilation, Running everywhere";

January 23, 1996, the first jdk--JDK1.0 was born, technical representative: pure interpretation of the implementation of the Java Virtual machine (Sun Classic VM), applets, AWT, etc.

In April 1996, 10 of the most important operating system vendors declared that they would embed Java technology in their products;

In the September 1996, about 83,000 Web pages were produced using Java technology;

February 19, 1997, JDK1.1 released, technical representative: JAR file format, JDBC, JavaBeans, Rmi,java important syntax: internal class (Inter Class) and Reflection (Reflection), etc.;

September 1997, more than 100,000 members of the javadeveloperconnection community;

February 1998, JDK1.1 was downloaded more than 2,000,000 times;

December 4, 1998, JDK1.2 released, split three versions: Standard Edition (J2SE), Enterprise (Java) and micro-version (J2ME), technical representatives: EJB, javaplug-in, javaidl, swing, etc., JVM built-in Jit,java syntax/ Api:strictft keywords, collections collection class, etc.;

April 27, 1999, hotspot virtual Machine released as JDK1.2 add-on program;

May 8, 2000, JDK1.3 released, built-in default hotspot virtual machine, improved mainly in some class libraries: JNDI, RMI, Timer API, Java 2D API, etc.

On June 5, 2001, Nokia announced that it would sell 100 million Java-enabled handsets by 2003;

February 13, 2002, JDK1.4 released, to the mature version, the release of new features: regular expression, abnormal chain, NIO, log class, XML parser and XSTL converter, etc.

September 30, 2004,JDK1.5 (JDK5, public version number) released , Java Syntax new features: Automatic boxing, generics, dynamic annotations, enumerations, variable-length parameters, traversal loops (foreach loop), etc., Java API add: Java.util.concurrent and contract, improve the JVM memory model (JMM);

November 13, 2006, Sun Open source jdk for OPENJDK, the two code is basically the same;

December 11, 2006,JDK6 released , Java-ee renamed to Ee,j2se renamed Java Se,j2me renamed Java ME, improved: Provide dynamic language support (built-in JS engine), provide compiler API and micro HTTP Server API, JVM improvement: Lock and synchronization, garbage collection, class loading algorithm;

April 7, 2009 Google APP engine began to support Java;

April 20, 2009, ORACLE74 billion dollar acquisition of sun. Obtain the copyright of Java;

July 28, 2011, Oracle released the official version of JDK7 , the main improvements: the provision of new G1 collectors, enhance the non-Java language call support, upgrade the loading class architecture, etc.

March 18, 2014, Oracle publishes the official edition of JDK8 , the main improvements: support lambda expressions and virtual extension methods, new date and time APIs, provide Nashhornjavascript engine, improve security;

2017 issued the official version of java9.0 (expected) ... 2, the new features of the JDK version 2-1, JDK5 (JDK1.5)--September 30, 2004

New language Features:

1. Automatic box packing and unpacking;

2, enumeration;

3, static import;

4, variable length parameters;

5, introspection;

6. Generic type;

7, dynamic annotation;

8, Traversal cycle (foreach loop);

9, Java API add: Java.util.concurrent and contract;

10, improve the JVM memory model (JMM), Adaptive garbage collection configuration, etc. 2-2, jdk6--2006 year December 11

1. Web service meta data;

2. Provide scripting language/Dynamic language support (built-in JS engine);

3, jtable sorting and filtration;

4, simpler, more powerful jax-ws;

5, lightweight HTTP Server;

6, embedded database Derby;

7, JVM Improvement: Lock and synchronization, concurrent garbage collection, class loading algorithms; 2-3, jdk7--2011 year July 28

Language improvements:

1, switch support the use of strings;

2, the use of list<string> templist = new arraylist<> (); That is, generic instantiation type automatic inference;

3, the syntax of the support set, not necessarily an array;

4, add some tools and methods to take environmental information;

5. Boolean type inversion, null pointer security, participation bit operation;

equals between 6 and two chars;

7, the safe subtraction;

8. The map set supports concurrent requests and can be written as map map = {name: "xxx", age:18};

JVM improvements:

9, the provision of new G1 collectors;

10, strengthen the dynamic call support;

11, more stringent type of document inspection;

Core Foundation improvements:

12, upgrade the loading class architecture;

13, Concurrency and collection update;

IO improvements:

14, to provide comprehensive new I/O APIs (nio.2)

More please refer to: Java SE 7 Features and enhancements, JDK 7 Features 2-4, jdk8--2014 year March 18

Language improvements:

1, allow the implementation of the default method in the interface;

2, support lambda expression & virtual extension method;

3, built-in functional interface;

4, support methods and constructor reference;

5, provide Nashhorn JavaScript engine, allow embedded in Java program JS code

Core improvements:

6, the new date and time API;

7, support multiple annotations annotation;

VM Improvements:

8, reduce the cache contention on the specified field;

9. Removal of permanent Generation (permanent generation);

10, remove some rarely used garbage collector combination, etc.;

More please refer to: "What's New in JDK 8", "JDK 8 Features" 2-5, jdk9-2017 Year (expected)

1, JDK, source module;

2. Simplify the process API;

3, lightweight JSON API;

4, the new HotSpot construction system;

5, improve the lock contention mechanism;

6, code segmentation cache;

7, Intelligent Java Compilation, the second phase;

8, HTTP 2.0 client;

For more information: JDK 9 3, the development of the JVM

We know that now JDK1.4 only hotspot as the official JVM, below we see how this situation is produced.

1. Sun Classic VM

The first commercial JVM;

jdk1.0/jdk1.1 only built-in classic vm,jdk1.2/jdk1.3 and hotspot coexist, JDK1.2 by default use classic vm,jdk1.3 discard hotspot,jdk1.4 VM;

itself only interprets execution, JIT compiler needs to plug, and the interpreter and compiler can not work together;

Memory model: An object lookup method based on handler;

low implementation efficiency;

2. Sun Exact VM

Publish only the Solaris platform version of JDK1.2;

be replaced by Hopspot;

Hotspot code detection, two-level just-in-time compiler, compiler and interpreter combination;

Memory model: Accurate memory management (Exact Memory Management);

Good execution performance;

3. Sun HotSpot VM

The most widely used JVM at the moment;

Acquired by Sun acquisition in 1997;

jdk1.2/jdk1.3 and hotspot coexist, JDK1.2 default use classic vm,jdk1.3 the default use hotspot,jdk1.4 only after hotspot;

Hotspot code detection, two-level just-in-time compiler, compiler and interpreter combination;

Memory model: Accurate memory management (Exact Memory Management);

Future combined with JRockit VM;

More hotspot Development Change situation please refer to: "Java Virtual Machine Technology"

4. BEA JRockit VM

Known as "the fastest JVM in the world";

Focus on server hardware and service-side applications;

No interpreter, only just-in-time compiler compile execution;

The garbage collector and the Missioncontrol Service suite are comparatively outstanding;

Acquired by Oracle, combined with Hopspot;

5. Other

IBM J9 VM: The same as the hotspot for multi-purpose virtual machines, the main application of IBM's own products;

Azul VM: Hotspot based on the improved, proprietary hardware platform Vege running;

Liquid Vm:jrockit VM Virtualization version, with operating system;

Apache Harmony: Not only the JVM, is an open source Java program running platform, using its own Java class library;

Dalvik vm:android platform Virtual machine, run class conversion of the Dex file, the use of register architecture, rather than JVM common stack architecture;

Microsoft JVM: Java early applets program, mainly in the browser, was terminated in 1997 by Sun Sue; 4. Application development of Java technology

1, AWT/SWING/SWT

Development GUI, c/S Desktop program, the response is slow, now rarely used;

2. Applet

Development browser run the Web page applet, requires the user to install the JRE plugin, the response is slow, now basically not;

3. Servlet

Develop a server-side running program that builds the basic model of "receive requests-invoke servlet process-return response", which belongs to Java EE important specification, Tomcat, Jetty, WebLogic, Websphere, JBoss is a servlet container that implements the Servlet specification and can run servlet programs.

4, JSP (JavaServer Pages)

Java can be written in an HTML page, and no jps,servlet can only build a response in one line of code;

5. MVC

Using some of the third frameworks, such as SSH/SSM, Java programs only need to pay attention to the processing of business logic;

6, Android

Develop mobile platform applications that provide an SDK optimized for mobile platforms and Dalvik VMs;

Wait a minute...

The above we have a comprehensive understanding of Java development, we will be fully in-depth learning about Java ...

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.