T6 - JAVA Flashcards
(85 cards)
Define Ecosistema JAVA SE (Standard Edition)
- Infraestructura de ejecución (JVM: Java Virtual Machine, JRE: Java Runtime Environment)
- Lenguaje de programación (Java)
- Herramientas y librerías de terceros
- ¿Cuáles son las diferencias entre construcción JDK y ejecución JRE?
- JDK (Java Development Kit): entorno de desarrollo que incluye compilador, depurador, JVM y herramientas necesarias para crear aplicaciones Java.
- JRE (Java Runtime Environment): entorno de ejecución que contiene la JVM y las librerías básicas necesarias para ejecutar aplicaciones Java, pero no incluye herramientas de desarrollo.
JDK: ¿Qué es javac en Java?
- javac es el compilador de Java.
- Convierte archivos de código fuente
.java
en archivos de bytecode.class
ejecutables por la JVM (Java Virtual Machine).
JDK: ¿Qué es el intérprete de Java?
- El intérprete ejecuta directamente el bytecode generado (.class).
- Forma parte de la JVM (Java Virtual Machine).
- Traduce bytecode en instrucciones comprensibles para el sistema operativo.
JDK: ¿Qué es jshell en Java?
- jshell es una herramienta de línea de comandos de Java.
- Permite
ejecutar fragmentos de código
Java de forma interactiva (REPL: Read-Eval-Print Loop). - Útil para pruebas rápidas y aprendizaje.
JDK: ¿Qué diferencia hay entre un intérprete y un compilador en Java?
-
Compilador (javac): traduce el código fuente
.java
➡️ bytecode.class
antes de la ejecución. - Intérprete (JVM): ejecuta el bytecode línea por línea en tiempo de ejecución.
- El compilador actúa antes de ejecutar, el intérprete durante la ejecución.
JDK: ¿Qué es javadoc en Java?
- javadoc es una herramienta de Java.
- Genera documentación
HTML a partir de comentarios
en el código fuente. - Facilita la creación de documentación técnica de clases, métodos y paquetes.
- Soporta metadatos como:
- @author: autor del código.
- @version: versión del código.
- @param: descripción de un parámetro de un método.
- @return: valor devuelto por un método.
- @throws: excepciones que puede lanzar un método.
- @see: referencias a clases o métodos relacionados.
- @since: desde qué versión existe.
- @serial: serialización de campos.
- @deprecated: indica que algo está obsoleto.
JDK: ¿Qué es keytool en Java?
- keytool es una utilidad de gestión de claves y certificados.
- Permite generar, almacenar y administrar pares de claves y certificados digitales en un keystore.
- Se utiliza para firmar aplicaciones y establecer comunicaciones seguras (SSL/TLS).
JDK: ¿Qué es jar en Java?
- jar (Java ARchive) es una herramienta de empaquetado de archivos Java.
- Agrupa múltiples archivos
.class
, imágenes y metadatos en un solo archivo.jar
. - Facilita la distribución y ejecución de aplicaciones Java.
JDK: ¿Qué es jarsigner en Java?
-
jarsigner es una herramienta para firmar archivos
.jar
. - Garantiza la autenticidad e integridad de los archivos.
- Utiliza certificados digitales y claves privadas almacenadas en un keystore.
JDK: ¿Qué es rmic en Java y qué clases genera?
- rmic es el compilador de objetos remotos en Java RMI (Remote Method Invocation).
- Genera clases
stub
(cliente) yskeleton
(servidor). - Facilita la comunicación entre objetos en diferentes máquinas.
JDK: ¿Qué es javap en Java?
-
javap (Java print) es una herramienta que muestra
el contenido de bytecode
de una CLASE en Java. - Muestra la estructura de clases
.class
sin necesidad del código fuente. - Permite ver métodos, atributos y firmas de una clase compilada.
JDK: ¿Qué son jmc y jconsole en Java?
jmc (Java Mission Control): herramienta de monitoreo y análisis de rendimiento.
- Analiza registros de vuelo
(flight recordings) de la JVM.
- Detecta problemas de rendimiento y ayuda a optimizar aplicaciones.
jconsole (Java Monitoring and Management Console): herramienta gráfica de monitoreo en tiempo real.
- Muestra uso de memoria, hilos, CPU
y otras métricas de la JVM.
- Utiliza JMX (Java Management Extensions) para conectarse a aplicaciones.
JRE: ¿Qué son los ficheros rt.jar en Java?
-
rt.jar (runtime Java Archive) es un archivo que contiene todas las
CLASES
ESENCIALES DE JAVA - Es fundamental para la ejecución de programas Java.
JRE: ¿Qué es el classpath en Java y qué 3 formas existen para encontrar archivos .jar
?
-
Classpath es una ruta o conjunto de rutas donde la
JVM y el compilador
buscan clases y archivos.jar
. - 3 formas de definir el classpath:
- Variable de entorno
CLASSPATH
. - Comandos
-cp
o-classpath
usados al ejecutar el programa (java -cp archivo.jar ClasePrincipal
). - Archivo
MANIFEST.MF
dentro de un.jar
, donde existe un campo “class-path:ruta(s)” que especifica rutas adicionales.
- Variable de entorno
JRE: ¿Para qué sirve el fichero META-INF/Manifest.mf en Java? ¿Que tipo de información contiene?
-
META-INF/Manifest.mf es el fichero de metadatos de un archivo
.jar
. - Contiene información como la clase principal (
Main-Class
) o el classpath (class-path:ruta(s)
). - Permite configurar opciones de ejecución y dependencias del
.jar
.
JRE: ¿Qué son los threads (hilos) en Java?
- Threads: unidades de ejecución dentro de un proceso.
- Los hilos son importantes para los métodos.
- Permiten realizar múltiples tareas de forma concurrente.
- En Java, se gestionan mediante la clase
Thread
o implementando la interfazRunnable
.
- Proceso: programa en ejecución que dispone de su propia memoria y recursos.
JRE: ¿Para qué sirve ejecutar “Hola Mundo” en Java?
- Verificar que el entorno de desarrollo Java está correctamente instalado.
- Comprobar que el
compilador
(javac) y laJVM
funcionan correctamente. - Aprender la estructura básica de un programa Java.
JRE: ¿Cuál es el hilo predefinido “Recolector de basura” en Java?
- Es un hilo automático de la JVM.
- Se encarga de liberar memoria eliminando objetos que ya no son utilizados.
- Funciona en segundo plano sin necesidad de intervención del programador.
LENGUAJE JAVA: ¿Qué significa que Java esté orientado a objetos?
- Java organiza el código en clases y objetos.
- Un objeto es una instancia: un ejemplar real creado a partir de una clase.
- Facilita representar el mundo real y reutilizar el código.
LENGUAJE JAVA: ¿Qué es una clase en Java?
- Una clase es un modelo que define cómo serán los objetos.
- Da la estructura y la información para crearlos.
- Es la base del código en Java.
LENGUAJE JAVA: ¿Qué es el diseño y arquitectura en Java en relación con las clases?
- Es cómo se organizan y conectan las clases.
- Define sus roles y relaciones para que el código sea claro y mantenible.
LENGUAJE JAVA: ¿Para qué sirven las clases de tipo Pantallas?
Manejo de eventos
LENGUAJE JAVA: ¿Qué son los paquetes en Java y qué tienen que ver con las clases?
- Un paquete agrupa clases relacionadas en una carpeta lógica.
- Ayuda a organizar el código y evitar conflictos de nombres.
- Una clase siempre pertenece a un paquete.