2012-06-01 29 views
37

voy a estar aprendiendo Java 7 y se han hecho algunas investigaciones, pero no han parecen responder a estas preguntas con claridad, si pudiera responder a estas preguntas o ayudarme un poco será muy apreciada:Java JDK, SDK, SE?


  • ¿Java 7 es solo Java SE 7? y Java 6 es Java SE 6?
  • ¿Java SE 7 también es Java JDK 7? y también, ¿qué es el JDK?
  • ¿Esto significa que el Java JDK es el mismo que el número de Java (Java SE 7)?
  • ¿Qué es java 1.5 y 1.6? y ¿cómo se corresponde eso con el número de java (Java SE ...)?
  • ¿Es el SDK de Java el mismo que el JDK?

Si tengo todo mal, por favor dígame. Gracias, conector

Respuesta

64

Sí, puede ser confuso.

No lo solicitó, pero comenzaré desde aquí. La JVM es la Máquina Virtual Java. Es un programa que puede leer código compilado de Java (los archivos .class y los archivos .jar que son simplemente archivos .zip que contienen un grupo de archivos .class empaquetados juntos) y ejecutarlo. Hay muchas JVM, por ejemplo, necesita una JVM para Windows, una para Linux, una para OSX, etc., pero también hay muchas JVM alternativas, JVM para dispositivos integrados, etc. (muchas estarán en desacuerdo y afirmarán que la JVM es solo una, y es una especificación. Sin embargo, comúnmente un administrador de sistema dirá "la JVM" para indicar el binario real que se está ejecutando en el servidor).

No solicitó lo siguiente tampoco. El JRE es el entorno de tiempo de ejecución de Java. Incluye todo lo necesario para ejecutar una aplicación Java, que es la propia JVM, la biblioteca estándar y un montón de otros archivos. La biblioteca estándar es en sí misma muy importante, ya que contiene muchas cosas útiles que usará al desarrollar aplicaciones Java. Contiene todas las cosas en java. * Paquetes y algunas cosas privadas en paquetes com.sun, com.oracle.

Las diferentes versiones de Java (1.0, 1.1, etc., hasta 1.7, también conocidas como Java 7) generalmente contienen mejoras tanto para la JVM como para la biblioteca estándar, por lo que las dos necesitan ejecutarse juntas, y empacados juntos en el JRE.

Si está ejecutando cualquier programa Java en su computadora, tiene un JRE instalado.

El JDK es el kit de desarrollo de Java. Contiene el JRE, así como muchas otras cosas útiles para desarrollando aplicaciones Java.Eso incluye obviamente el compilador (que también está contenido en el JRE por alguna buena razón, pero puede ignorar este hecho ahora), la utilidad JAR para crear archivos .jar, muchas herramientas para "descompilar" archivos de clase, inspeccionar archivos .jar, reempaquetarlos, etc.

También suele contener documentación para la biblioteca estándar y también todas las fuentes de la biblioteca estándar, ya que son útiles para que los desarrolladores las lean e inspecten. Si desea desarrollar seriamente aplicaciones Java, necesita el JDK.

Cuando hablamos de JavaSE, JavaEE, JavaME etc., esas son las llamadas "ediciones". Básicamente, ya que el ecosistema de Java es enorme, Sun decidió ofrecer Java en distintas ediciones:

  • JavaSE: es la edición estándar, por lo general es un buen ajuste para el software del lado del cliente, las aplicaciones normales, etc.
  • JavaME: es la edición móvil, es con lo que se hicieron pequeños juegos en teléfonos antiguos, pero básicamente es una versión "más pequeña" de Java adecuada para procesadores de muy baja capacidad.
  • JavaEE: es la "edición empresarial". Se utiliza para desarrollar cosas del lado del servidor, por lo que incluye muchas bibliotecas utilizadas en el lado del servidor.

En cuanto a la numeración, la ensuciaron bastante. En realidad, después de Java 1.4 crearon el JCP, para involucrar a la comunidad en el desarrollo de Java y, a partir de Java 1.5, se denomina oficialmente "Java 5", a pesar de que la mayoría lo llama 1.5. Además, Java 1.2 era Java 2, pero todos los que conozco que no eran working in Sun at that time always called it 1.2.

+0

Cuando descargas Java (digamos Java 7), viene con la JVM. –

+0

Sí, la JVM es uno de los componentes de JRE. El JDK contiene también el JRE. Entonces sí, también tendrás la JVM. En realidad, "la JVM" (como se pretende aquí, no la especificación de JVM, el binario real) es el programa "java.exe" y son las DLL que se ven cuando se inicia un programa java (o el comando java y .so relacionado si bajo * nix o osx) –

+1

Muchas gracias, realmente explicó mucho :) –

2

Respuesta 1: SE significa Standard Edition. Es casi como que cada JRE hoy en día esté en la edición estándar, por lo que puede tomar Java 7 y Java SE 7 como la misma cosa.

Respuesta 2: JDK significa Java Development Toolkit. Java SE es la tecnología, y JDK es el conjunto de herramientas para desarrollar en esa tecnología.

Respuesta 3: Técnicamente sí. En realidad, es más probable que veas "JDK 1.6" junto con "Java 6", "JDK 1.7" junto con "Java 7", y así sucesivamente.

Respuesta 4: Igual que 3, supongo.

Respuesta 5: El Kit de desarrollo de software de Java es igual al Kit de desarrollo de Java, entonces sí.

Este diagrama puede ayudar:

http://www.oracle.com/technetwork/java/javase/tech/index.html

+0

Java SE significa Standard Edition (a diferencia de EE, o Enterprise Edition), no Second Edition. – bobmcn

+0

Ya lo he puesto en las ediciones, pero gracias por notarlo. –

1

SE = edición estándar, versión estándar de Java, a menudo llamado simplemente java X. La otra versión es EE, más orientado a los componentes.

JDK = java kit de desarrollo, este es un subconjunto del sdk que es lo que usas para desarrollar la aplicación Java, es un framework.

El número de versión tiene 1.7 se llama java 7. Y puede obtener tanto la versión SE como el SDK de esta versión.

De todos modos se puede encontrar toda la información en Wikipedia

10

es Java 7 acaba de Java SE 7? y Java 6 es Java SE 6?

Sí.

Hay un par de "ediciones" de Java, es decir, Java SE, la "Edición estándar", Java EE, la "Enterprise Edition" y Java ME, la "micro edición".

"Java N" donde N es un número que hace referencia al SE. Hay números de edición por separado para Java EE que ahora están en la versión 6. Java ME también tiene sus propias versiones: actualmente se encuentra en la versión 3. Java ME está diseñado para dispositivos móviles y pequeños.

Java EE es un conjunto de bibliotecas e interfaces, como EJB, JMS, JNDI, Servlets/JSP que se crean en la parte superior de Java SE.

¿Es Java SE 7 también Java JDK 7? y también, ¿qué es el JDK?

JDK = Java Development Kit. Cuando descarga Java, puede obtener JRE (Java Runtime Environment) que solo le permite ejecutar aplicaciones Java ya compiladas o puede obtener el JDK que le permite compilar y ejecutar aplicaciones Java. Java SE 7 se refiere tanto al JDK como al JRE.

¿Esto significa que el Java JDK es el mismo que el número de Java (Java SE 7)?

Sí.

¿Qué es java 1.5 y 1.6? y ¿cómo se corresponde eso con el número de java (Java SE ...)?

La numeración de Sun para Java cambió midstream y es un poco confuso. Pasaron de 1.0 a 1.1 y luego a 1.2. Luego decidieron llamar a 1.2 "Java 2" y esa etiqueta duró hasta Java 1.4. Entonces Java 5 se llamó 1.5 y 5.0 y eso ha continuado: Java 7 también es Java 1.7, Java 6 también es Java 1.6, etc.

¿Es el SDK de Java el mismo que el JDK?

Sí.

+1

El nombre Java2 aplicado a cada versión de Java desde la versión 1.2 hasta la versión 1.4.2 de Java. –

+0

@Mark - buen punto. He actualizado mi respuesta un poco para aclarar. – quux00

Cuestiones relacionadas