-
Java fue creada por Sun Microsystems en 1991 como una herramienta de programación como parte de un proyecto denominado Green Project
-
Los objetivos de Gosling eran implementar una máquina virtual y un lenguaje con una estructura y sintaxis similar a C++. Entre junio y julio de 1994, tras una sesión maratoniana de tres días entre John
Gaga, James Gosling, Patrick Naughton, Wayne Rosing y Eric Schmidt, el equipo reorientó la plataforma hacia la Web. -
Durante 1994 se les hizo una demostración de HotJava y la plataforma Java a los ejecutivos de Sun. Java 1.0a pudo descargarse por primera vez en 1994.
-
En 1995, durante las conferencias de SunWorld, fueron presentados al público Java y HotJava, el navegador Web.
El acontecimiento fue anunciado por John Gage, el director científico de Sun Microsystems. El acto estuvo acompañado por una pequeña sorpresa adicional, de que Java sería soportado en los navegadores de Netscape. -
Sun fundó el grupo empresarial JavaSoft para que se encargase del desarrollo tecnológico. Dos semanas más tarde la primera versión de Java fue publicada.
-
Dentro de las mejoras se encuentran:
Reestructuración intensiva del modelo de eventos AWT (Abstract Windowing Toolkit)
clases internas (inner classes)
JavaBeans
JDBC (Java Database Connectivity), para la integración de bases de datos
RMI (Remote Method Invocation) -
Presentada bajo la denominación Java 2 y el nombre "J2SE" (Java 2 Platform, Standard Edition) reemplazó a JDK para distinguir la plataforma base de J2EE (Java 2 Platform, Enterprise Edition) y J2ME (Java 2 Platform, Micro Edition). Otras mejoras añadidas incluían:
Reflexión en la programación
API gráfica ( Swing) integrada en las clases básicas
Máquina virtual (JVM) equipada con un compilador JIT
Java Plug-in
Java IDL, para interoperabilidad con CORBA -
Los cambios más notables de esta versión fueron:
Inclusión de la máquina virtual de HotSpot JVM (la JVM de HotSpot fue lanzada inicialmente en abril de 1999, para la JVM de J2SE 1.2)
RMI fue cambiado para que se basara en CORBA
JavaSound
Se incluyó el Java Naming and Directory Interface (JNDI) en el paquete de bibliotecas principales (anteriormente disponible como una extensión)
Java Platform Debugger Architecture (JPDA) -
Los cambios más notables de esta versión fueron:
Inclusión de la máquina virtual de HotSpot JVM (la JVM de HotSpot fue lanzada inicialmente en abril de 1999, para la JVM de J2SE 1.2)
RMI fue cambiado para que se basara en CORBA
JavaSound
Se incluyó el Java Naming and Directory Interface (JNDI) en el paquete de bibliotecas principales (anteriormente disponible como una extensión)
Java Platform Debugger Architecture (JPDA) -
Los cambios más notables fueron:
Palabra reservada assert
Expresiones regulares modeladas al estilo de las expresiones regulares Perl
Encadenación de excepciones.
non-blocking NIO (New Input/Output)
Logging API
API I/O para la lectura y escritura de imágenes JPEG o PNG
Parser XML integrado y procesador XSLT (JAXP)
Seguridad integrada y extensiones criptográficas (JCE, JSSE, JAAS)
Java Web Start incluido (El primer lanzamiento ocurrió en marzo de 2001 para J2SE 1.3) -
Originalmente numerado 1.5, esta notación aún es usada internamente. Los cambios más notables fueron:
Plantillas (genéricos)
Metadatos — Permite a estructuras del lenguaje como las
clases o los métodos, ser etiquetados con datos adicionales, que puedan ser procesados posteriormente por utilidades de proceso de metadatos.
Autoboxing/unboxing
Enumeraciones
Varargs
Bucle for mejorado -
En esta versión, Sun cambió el nombre J2SE por Java SE y eliminó el ".0" del número de versión. Los cambios más importantes de esta versión son:
Nuevo marco de trabajo y APIs que hacen posible la combinación de Java con lenguajes como PHP, Python, Ruby y JavaScript.
Incluye motor Rhino, de Mozilla, una implementación de Javascript en Java.
Cliente completo de Servicios Web y soporta especificaciones como JAXWS 2.0, JAXB 2.0, STAX y JAXP.
Mejora en interfaz gráfica y en rendimiento. -
Los cambios más importantes introducidos en esta versión son:
Soporte para XML dentro del propio lenguaje.
Un nuevo concepto de superpaquete.
Soporte para closures.
Introducción de anotaciones estándar para detectar fallos en el software.
No oficiales:
NIO2.
Java Module System.
Java Kernel.
Nueva API para el manejo de Días y Fechas, la cual reemplazará las antiguas clases Date y Calendar.
Posibilidad de operar con clases BigDecimal usando operandos. -
Los cambios más importantes introducidos en esta versión son:
Incorpora de forma completa la librería JavaFX.
Diferentes mejoras en seguridad.
Diferentes mejoras en concurrencia.
Añade funcionalidad para programación funcional mediante expresiones Lambda.
Mejora la integración de JavaScript.
Nuevas API para manejo de fechas y tiempo (date - time). -
La característica distintiva de Java SE 9 es el sistema de módulo de plataforma Java, también conocido como Project Jigsaw, lo que hace que sea más fácil para los desarrolladores ensamblar y mantener aplicaciones sofisticadas de manera confiable.
El sistema de módulos también hace al JDK más flexible, permitiendo a los desarrolladores agrupar únicamente las partes de JDK necesarias para ejecutar una aplicación al implementarla en la nube.