preguntas de la entrevista básicas: JDK y JRE

1. Definiciones

JDK es el Kit de Desarrollo de Java, que es completamente funcional SDK Java. Tiene todo, así como el compilador (javac) y las herramientas de JRE tener (como javadoc y jdb). Puede crear y compilar el programa.

JRE es el entorno de ejecución de Java. Es todo lo que necesita para ejecutar el programa Java colección compilado, incluida la Máquina Virtual Java (JVM), bibliotecas de clases de Java, Java comandos y algunos otros componentes básicos. Sin embargo, no se puede utilizar para crear nuevos programas.

2. Distinción

JRE incluye principalmente: los archivos de clase biblioteca de Java (tanto envasados ​​en el tarro en el directorio lib) y máquinas virtuales (jvm.dll);

JDK incluye principalmente: los archivos de clase biblioteca de Java (tanto envasados ​​en el tarro en el directorio lib) y viene con un JRE. Así que ¿por qué JDK viene con un JRE que? Y el siguiente cliente y el servidor en la carpeta jdk / jre / bin contiene dos jvm.dll (JDK que viene con instrucciones JRE tener dos máquinas virtuales).

3. dificultades

Si está instalado el JDK, se encuentra el equipo tiene dos conjuntos de JRE, que se encuentra en un directorio C: \ Archivos de programa \ Java \ jre7, otro conjunto se encuentra en C: \ Archivos de programa \ Java \ jdk1.7.0_72 en \ jre directorio.
estado JRE como un PC, que escribir aplicaciones Win32 requieren que el sistema operativo para ayudarnos a ejecutar el mismo, los programas Java también deben ser escritos en nuestra JRE para funcionar. Así que cuando se carga acabada JDK, si es separado en dos lugares diferentes en el disco duro para instalar dos conjuntos de JRE, entonces se puede imaginar el equipo tiene dos virtual Java
máquina PC, tiene una función para ejecutar programas Java. Así que podemos decir, siempre y cuando su equipo para instalar el JRE, Java aplicaciones se pueden ejecutar correctamente.

4. problema

una, ¿Por qué dejar que el JDK de Sun JRE instalado dos conjuntos de la misma?
Esto se debe a que hay un JDK escrito mucho en las herramientas de desarrollo Java, como javac.exe, jar.exe, estos comandos se colocan en C: \ Archivos de programa \ Java \ jdk1.7.0_72 \ bin directorio.
Porque están escritos en el comando java, por lo que depender de paquete Java JAR, éstas paquete frasco almacenado en C: \ Archivos de programa \ Java \ jdk1.7.0_72 \ lib del directorio
si el directorio C: \ Archivos de programa \ Java \ jdk1.7.0 _72 \ lib \ directorio de tools.jar renombrado tools1.jar, y luego ejecutar javac.exe, muestran los siguientes resultados:
Excepción en el hilo "principal" java.lang.NoClassDefFoundError: COM / Sol / Herramientas / javac / principal
pero la entrada de java -cp C: \ archivos de programa \ Java \ jdk1.7.0_72 \ lib \ tools1.jar com.sun.tools.javac.Main
va a obtener los mismos resultados javac.exe.
A partir de aquí podemos probar javac.exe sólo un envoltorio (Wrapper), al tiempo que propósito es permitir a los desarrolladores de tener que introducir los dedos largos vida.
Y podemos encontrar C: \ Archivos de programa \ Java \ Programa bajo jdk1.7.0_72 \ bin son pequeñas, no más grande que 29K, desde aquí podemos sacar una conclusión. Son las herramientas de JDK está casi escrito en Java, sino que también es una aplicación Java, a fin de utilizar las herramientas de JDK que acompaña el desarrollo de los programas de Java, también debe adherirse a un JRE para el trabajo por lo que se encuentra en C: \ Archivos de programa \ Java \ jdk1.7.0_72 \ jre en el marco del conjunto de JRE que se utiliza para ejecutar programas Java se utiliza generalmente.

b, si un equipo instalado más de dos conjuntos de JRE, quien decide que?
La tarea principal del cuerpo cae java.exe. java.exe trabajo es encontrar un JRE adecuado para ejecutar programas Java. java.exe de acuerdo con el orden de la parte inferior para encontrar el JRE: no existe ningún directorio propio JRE; directorio padre no tiene JRE; para consultar el registro:
[HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ el entorno de ejecución de Java]
Por lo tanto, operan resultados con su java.exe JRE es dentro de la computadora que tiene un montón de realizar.

Publicados 122 artículos originales · alabanza ganado 13 · vistas 410 000 +

Supongo que te gusta

Origin blog.csdn.net/jinxinxin1314/article/details/105422757
Recomendado
Clasificación