Without a doubt, Java is distinguished by being one of the most famous programming languages today and even, it is the main language in which a large number of programmers have developed their professional career worldwide. Taking into account that, already has more than 20 years between us .
It should be noted that, this authentic modern language was conceived around the idea of working on any computer. Which, is a project developed by the team of James Gosling , a renowned computer scientist who is the father of this programming language.
Given the remarkable importance that Java has had since its birth, it is necessary to know what are the peculiarities that distinguished this language from the rest since its inception and even know which versions of it exist until the present day. Therefore, we will detail all this throughout the post.
What outstanding features distinguished Java from the other programming languages? ?
In view of the great fame that this computer language has, you will surely be wondering what are the qualities it exhibits compared to the rest of the programming languages that There are , so many programmers decide to develop in this world of technology from it.
In such a way that, below, we present you the most important features that the Java language shows since its inception:
- It is object oriented, completely. Which means that both the data and the functions that work on it are organized into structures called “classes” . Therefore, it will be necessary to create classes to program with Java .
- Unlike some other computer languages, in Java it is necessary to have a development kit and a compiler .
- It has strong structures, that is, is a strongly typed language . Therefore, when declaring a variable in it, it will be mandatory to indicate its type and thus, you cannot change from one type to another automatically.
- In Java, the primitive data types have sizes and behaviors identical on any platform . Whether Windows, Solaris, Unis, etc.).
- With regard to memory management in Java, it should be noted that it is automatic. Which means that, this is automatically assigned when an object is created and, in that sense, a “garbage collector” is responsible for releasing it when there is no reference to the object in question.
Chronology of all Java versions that have been developed so far
Now, it is time to detail the existing versions of Java so far, in order to specify how many there are and what they are , also knowing their characteristics of greatest interest.
Thus, we start the list chronologically, below:
Java version 1.0
Release date: January 23, 1996
As its identification allows to deduce it, it is the first version of the Java computer language. Which was announced by the scientific director of Sun Microsystems, John Gage and the vice president of Netscape, Marc Andreessen . Taking into account that, this last character also reported that Java series supported in Netscape browsers.
- It contains the main classes, the virtual machine and the AWT graphic API.
- It was a great innovation for the world of technology , since starting from it, the experts provided a platform-independent language and a light and free execution environment for the most famous platforms.
- Thanks to this version, the main web browsers added, shortly after, the possibility to run Java applets that were embedded in the websites .
Java version 1.1
Release date: February 19, 1997
A year later, the second version of this programming language emerged. Which, included substantial improvements and made an important leap with respect to the use of language worldwide.
- It was based on incorporating several missing classes, such as: Readers / Writers, Calendars and Bundles .
- The biggest contribution in version 1.1, no doubt , was the fact of adding the JavaBeans standard and the JDBC API (Java Database Connectivity) for the database connection. Which is estimated as a fact of relevance in computing.
- It also shows an intensive restructuring of the AWT (Abstract Windowing Toolkit) event model.
- Includes internal classes or “inner classes” .
Java version 1.2
Release date: December 08, 1998
With another very important evolution, this new version of the programming language appears, which is collected under the name “Java 2” and the name “J2SE” . Taking into account that, from here, the following versions treasured that denomination.
- Exhibited the arrival of the Collections framework and the Swing API . Which allows to develop much more complex window interfaces.
- Contains Java IDL , which is an implementation of IDL or “Interface for Language Description” designed for interoperability with CORBA .
- For the first time, Sun’s virtual machine was equipped with a compiler “Just in Time” (JIT) .
- Other features: Java Plug -in, collections or “collections”, the strictfp reserved word, etc.
Java version 1.3
Release date: May 08, 2000
Also recognized as “2SE 1.3” , which brought significant improvements in the new millennium. Given that, so far, it is already a mature platform.
- JNDI support or “Java Naming and Directory Interface” is added in the main library package. Which, previously, was only available as an extension.
- In this version there is the inclusion of the JVM HotSpot virtual machine with JIT compilation. Which was released in April 1999 for the JVM of J2SE 1.2.
- Here RMI was changed to be based on CORBA .
- Contains JavaSound and Java Platform Debugger Architecture (JPDA).
Java version 1.4
Release date: February 06, 2002
It is distinguished from the other versions, as it is the first launch of the Java platform developed under the Java Community process as “JSR 59”. This version is also identified as “J2SE 1.4” .
- As for the new APIs, there is a truly relevant leap. Since it adds API I / O for reading and writing images in formats such as JPEG or PNG. Like Logging API (Specified in JSR 47.).
- Powerful support for XML and Regular Expressions is also incorporated.
- It has integrated security and cryptographic extensions, such as: JCE, JSSE, JAAS . In addition to Java Web Start included.
Java version 1.5
Release date: September 30, 2004
Then, two years later, Java 5 or “J2SE 5.0” was born; version in which two important jumps could be noticed at the Core level of the language. In view of, the inclusion of “Generic Types” and the concept of metadata with the use of annotations.
- Thanks to the use of annotations in this version, it is possible to label classes or methods with additional data . Which, can be processed by metadata process utilities, later.
- There is a significant extension in terms of API support that are oriented to concurrent programming.
- The reserved word “enum” creates a typesafe ; ordered list of values (such as Dia.LUNES, Dia.MARTES, etc.). Which could only be carried out by entire constants or manually constructed classes, previously.
- Show an improved “for loop” . Since, the syntax has been extended with a special one to iterate over each member of an array or over any class that implements Iterable, such as the standard Collection class, for example.
Java version 1.6
Release date: December 11, 2006
This version of 2006 was under development under JSR 270 and it was right here that Sun changed the name “J2SE” that was installed since version 1.2 by “Java SE” . As well as the new versions, it also showed important changes and / or improvements.
- It has excellent improvements in its performance and also in the graphical interface.
- Includes a complete web services client and also has support for the latest specifications for web services. Such as: JAX-WS 2.0, JAXB 2.0, STAX and JAXP .
Java version 1.7
Release date: Between 2006 and 2008 it was in the early stages of planning. Its official launch was in July 2011
It is also called “Java SE 7” and its code name is Dolphin . That way, it produces a great optimization of the virtual machine, since it included new garbage collectors. But, your changes around language are truly limited.
- You have support for XML in your own language. As for closures.
- Introduces introduction of standard annotations to detect software bugs .
- Manage a new superpackage concept.
- It also adds: New API for managing Days and Dates , which will replace the old Date and Calendar classes, Java Module System, Java Kernel and the possibility of operating with BigDecimal classes using operands.
Java version 8
Release date: March 2014
Mainly, it is a version that has the support for Lambda expressions and streams , which guarantees a much more functional style for Java programs.
- Completely, it incorporated the JavaFX library into the Java JDK.
- Within its scheme to a more functional approach, the MapReduce transformations also appear.
Java version 9
Release date: September 21, 2017
This is one of the newest versions of this programming language, which is also known as “Java SE 9” . In this regard, it should be noted that, although its expected launch date was July 9 of that same year, this had some delay due to some security problems located within the platform .
- The “Project Jigsaw” can be found within this version of Java. What, sets the modularization of the JDK .
- It offers full support for http 2.0.
- It also stands out for having “Java Shell ”; from which, it will be possible to work and interact at the same time “Read – eval – print loop” or RELP.
Java version 10
Release date: March 20, 2018
One year after the previous one, the Java SE 10 version was published in order to guarantee a prolonged support every year and a half, approximately. For this, offer long-term support or LTS and, with that, companies have security in the applications they develop .
- The JIT Graal compiler implemented in Java on the Linux platform is added experimentally.
- This version includes several root certificates to the keystore added for allow TLS connections to work by default .
- By installing the functionality added in javac , javah functionality is removed. So, the latter was improved and replaced by javac directly.
Java version 11
Release date: September 25, 2018
Just six months after version 10, a new version of Java appeared that is also known as “Java SE 11” . The one that, in that same year, could include several relevant news in terms of security .