Tema6_Seccion2_LenguajeJava Flashcards

(218 cards)

1
Q

¿Qué es javac?

A

Es el compilador de Java que traduce código fuente .java a bytecode .class.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Qué hace java?

A

Ejecuta bytecode .class en la máquina virtual de Java (JVM).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Para qué sirve jshell?

A

Es un intérprete REPL que permite ejecutar comandos de Java de forma interactiva.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué genera javadoc?

A

Documentación HTML a partir de comentarios en el código fuente de Java.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Para qué se usa jar?

A

Para empaquetar clases compiladas y otros archivos en un .jar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Qué hace jarsigner?

A

Firma y verifica la autenticidad de archivos .jar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Para qué se usa keytool?

A

Para gestionar claves y certificados en operaciones criptográficas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Qué hace wsimport?

A

Genera clases Java automáticamente a partir de un servicio web SOAP.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Para qué sirve xjc?

A

Compila esquemas XSD en clases Java.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Qué genera rmic?

A

Crea stubs y skeletons para comunicación distribuida en Java RMI.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué función tiene rmiregistry?

A

Actúa como servicio de nombres para registrar objetos RMI.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Qué hace javap?

A

Desensambla archivos .class, mostrando su estructura de bytecode.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Para qué se usa jdb?

A

Es un depurador para analizar y corregir programas Java.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué analiza jdeps?

A

Dependencias de clases o paquetes en un proyecto Java.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Qué herramientas monitorean la JVM?

A

jmc y jconsole permiten supervisar el rendimiento de la JVM.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

¿Qué es el JRE?

A

Es el entorno de ejecución de Java que incluye la JVM y las bibliotecas necesarias.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

¿Qué es la JVM?

A

Es el intérprete que ejecuta el bytecode de Java en la máquina virtual.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

¿Qué contiene java.base?

A

Proporciona las librerías fundamentales de Java, reemplazando rt.jar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

¿Qué hace el comando java?

A

Es el intérprete que ejecuta bytecode .class en la JVM.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

¿Para qué sirve la variable de entorno CLASSPATH?

A

Permite a la JVM localizar clases externas a tu código y a rt.jar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

¿Cuáles son los tres tipos de “classpath” en Java? hay 3

A

La variable de entorno CLASSPATH.
La opción -classpath al ejecutar java.
El campo Class-Path en Manifest.mf dentro de un .jar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Qué hace el ClassLoader en la JRE?

A

Carga dinámicamente las clases necesarias en la ejecución de un programa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

¿Qué es un Thread en Java?

A

Es un recurso que permite la ejecución concurrente de métodos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

¿Se pueden crear Threads en Java?

A

Un método es pasivo, mientras que un Thread es activo y ejecuta código.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
¿Se pueden crear Threads en Java?
Sí, además de los predefinidos, se pueden crear hilos propios.
26
¿Es común usar Threads en aplicaciones web?
No es habitual, ya que los servidores gestionan la concurrencia.
27
¿Qué es el Garbage Collector (GC)?
Es un hilo predefinido que libera memoria eliminando objetos no usados.
28
¿Qué es una clase en Java?
Es una plantilla que define atributos y métodos para crear objetos.
29
¿Qué es un objeto en Java?
Es una instancia de una clase que existe en memoria.
30
¿Qué es la encapsulación?
Es un mecanismo que restringe el acceso directo a los atributos de una clase, permitiendo su modificación solo a través de métodos.
31
¿Qué es la herencia en Java?
Es un mecanismo que permite que una clase derive de otra, heredando sus atributos y métodos.
32
¿Cuántas clases puede heredar una clase en Java?
Solo puede heredar de una clase, pero puede implementar múltiples interfaces.
33
¿De qué clase heredan todas las clases en Java?
De Object, la superclase de todas las clases en Java.
34
¿Qué palabra clave se usa para referirse al objeto actual?
this se usa para referirse al objeto actual dentro de una clase.
35
¿Qué palabra clave se usa para acceder a la superclase?
super permite acceder a métodos y constructores de la clase padre.
36
¿Qué es un constructor en Java?
Es un método especial que se usa para inicializar objetos.
37
¿Qué compara == en Java?
Compara referencias de objetos, no su contenido.
38
¿Cómo se comparan contenidos de objetos en Java?
Sobrescribiendo el método equals de la clase Object.
39
¿Qué es el casting en Java?
Es la conversión de un objeto de una clase a otra compatible.
40
¿Qué son los tipos genéricos en Java?
Permiten definir clases y métodos con tipos de datos flexibles.
41
¿Qué significa "bounded" en tipos genéricos?
Restringe los tipos permitidos en una declaración genérica.
42
¿Qué es la ligadura dinámica en Java?
Es la capacidad de llamar a métodos sobreescritos en tiempo de ejecución, también conocida como polimorfismo.
43
¿Qué hace la palabra clave final en Java?
Impide heredar una clase, modificar un atributo o sobrescribir un método.
44
¿Qué significa static en Java?
Indica que un método o atributo pertenece a la clase, no a instancias.
45
¿Qué es una clase abstract?
Es una clase que no puede instanciarse y puede contener métodos sin implementación.
46
¿Para qué se usa private en Java?
Restringe el acceso de un atributo o método solo dentro de la clase.
47
¿Qué significa public en Java?
Permite acceder a un atributo o método desde cualquier parte del código.
48
¿Qué hace protected?
Permite el acceso a herederos y clases dentro del mismo paquete.
49
¿Qué es un método native?
Es un método implementado en otro lenguaje, no en Java.
50
¿Para qué sirve volatile en Java?
Indica que una variable siempre debe leerse desde la memoria principal, no de caché.
51
¿Qué significa transient en Java?
Evita que un atributo sea serializado al guardarse en disco o enviarse por red.
52
¿Para qué se usa synchronized?
Garantiza que solo un hilo ejecute un método o bloque de código a la vez.
53
¿Qué implica no definir un modificador de acceso?
La visibilidad es de paquete (default), accesible solo dentro del mismo paquete.
54
¿Qué es un paquete en Java?
Es una forma de agrupar clases relacionadas para organizar mejor el código.
55
¿Qué es un módulo en Java?
Es una agrupación de paquetes que permite un mejor control de dependencias y encapsulación.
56
¿Qué es una interfaz en Java?
Es una definición funcional sin implementación, aunque desde Java 8 puede tener métodos default y static.
57
¿Qué es un enum en Java?
Es un tipo especial que define un conjunto de valores constantes predefinidos.
58
¿Para qué se usan las anotaciones en Java?
Para agregar metadatos al código y configurarlo de forma declarativa.
59
¿Qué es un record en Java?
Es una estructura optimizada para almacenar datos de forma inmutable, introducida en JDK 14 y estable desde JDK 17.
60
¿Qué es una API en Java?
Es un conjunto de clases y métodos predefinidos que facilitan el desarrollo.
61
¿Qué son las colecciones en Java?
Son estructuras de datos dentro del paquete java.util para almacenar y manipular conjuntos de objetos.
62
¿Qué hace el método asList(T… a) en Java?
Convierte un array en una lista (List).
63
¿Para qué se usa binarySearch(int[], int)?
Para buscar un elemento en un array ordenado.
64
¿Qué hace el método fill() en Java?
Rellena un array con un valor específico.
65
¿Cómo se ordena un array en Java?
Usando el método sort().
66
¿De qué interfaz heredan las colecciones en Java?
De Collection, excepto Map, que no hereda de Collection ni de Iterable.
67
¿Qué tipos de colecciones hay en Java?
List, Set, SortedSet, Queue y DeQueue.
68
¿Qué diferencia hay entre ArrayList y LinkedList?
ArrayList usa un array dinámico, mientras que LinkedList es una lista doblemente enlazada.
69
¿Qué es un ArrayDequeue en Java?
Es una implementación de Deque basada en un array redimensionable, que permite inserciones y eliminaciones eficientes en ambos extremos.
70
¿Qué estructura usa Stack en Java?
Sigue el principio LIFO (último en entrar, primero en salir).
71
¿Cómo se almacenan pares clave-valor en Java?
Con la interfaz Map, usando métodos como put(K, V) y get(K).
72
¿Qué diferencia hay entre HashMap y HashTable?
HashMap permite nulos y no es sincronizado, HashTable es más antigua y sincronizada.
73
¿Qué es un hilo de ejecución en Java?
Un hilo (Thread) es la unidad básica de ejecución en Java, permitiendo ejecutar código concurrentemente.
74
¿Cuáles son las dos formas de crear un hilo en Java?
Heredando de Thread y sobrescribiendo run(). Implementando la interfaz Runnable y pasando la instancia a Thread.
75
¿Cómo se crea un hilo heredando de Thread?
Se crea una clase que extiende Thread, se sobrescribe run(), y se llama start().
76
¿Cómo se ejecuta un hilo que hereda de Thread?
Se instancia la clase y se llama start(), lo que pone el hilo en la cola de ejecución.
77
¿Cómo se crea un hilo con Runnable?
Se implementa Runnable, se sobrescribe run(), y se pasa la instancia a new Thread().
78
¿Cómo se ejecuta un hilo usando Runnable?
Se crea una instancia de la clase Runnable, se pasa a Thread y se llama start(). Thread h1 = new Thread (new TareaBackup()); h1.start();
79
¿Qué hace el método start() en un hilo?
Coloca el hilo en la cola de ejecución y el planificador ejecuta run() cuando sea su turno.
80
¿Cuál es la diferencia entre start() y run()?
start() inicia un nuevo hilo, mientras que run() ejecuta el código en el mismo hilo principal.
81
¿Qué tipo de elemento es un hilo en Java?
Un hilo (Thread) es dinámico, ya que su ejecución depende del planificador de la JVM.
82
¿Qué es la sincronización en Java?
Es un mecanismo que permite que solo un hilo acceda a un recurso compartido a la vez.
83
¿Por qué cada objeto en Java funciona como un monitor?
Porque la clase Object incluye los métodos wait() y notify() para control de concurrencia.
84
¿Qué sucede si un método es synchronized?
Solo un hilo puede ejecutarlo a la vez, bloqueando a los demás hasta que termine.
85
¿Cómo se puede sincronizar una parte del código en Java?
Usando un bloque synchronized(lockObj) { ... } en lugar de sincronizar todo el método.
86
¿Cómo identificar qué hilo está ejecutando un código?
Usando Thread.currentThread().getId() y getName().
87
¿Qué diferencia hay entre variables de instancia y de hilo?
Cada hilo tiene sus propias variables locales, pero comparten los atributos del objeto.
88
¿Por qué hay peligro de concurrencia en atributos de objetos?
Porque varios hilos pueden modificarlos simultáneamente, causando inconsistencias.
89
¿Cómo se evita la concurrencia en atributos compartidos?
Usando synchronized en métodos o bloques críticos para evitar accesos simultáneos.
90
¿Qué es JDBC en Java?
Es el API para la persistencia de bajo nivel, permitiendo interactuar con bases de datos relacionales.
91
¿Para qué sirve JDBC?
Para guardar, recuperar y borrar información en una base de datos mediante SQL.
92
¿Cómo trabaja JDBC con las tablas de la base de datos?
De manera manual, permitiendo manipularlas directamente con consultas SQL.
93
¿Qué es un DataSource en Java?
Es un objeto que gestiona un conjunto de conexiones (pool de conexiones) a la base de datos.
94
¿Qué es un Driver en JDBC?
Es un .jar proporcionado por el fabricante para conectar Java con una base de datos específica.
95
¿Cuáles son los principales objetos en JDBC?
DataSource, Driver, Statement, PreparedStatement, CallableStatement y ResultSet.
96
¿Qué diferencia hay entre Statement y PreparedStatement?
Statement ejecuta consultas SQL simples, mientras que PreparedStatement permite consultas parametrizadas.
97
¿Para qué sirve CallableStatement?
Para ejecutar procedimientos almacenados en la base de datos.
98
¿Qué es un ResultSet en JDBC?
Es el objeto que almacena los resultados de una consulta SQL en forma de tabla.
99
¿Por qué no se usa java.util.logging en Java?
Porque es poco potente y tiene menos flexibilidad que otras soluciones de terceros.
100
¿Qué es SLF4J en Java?
Es una API de logging que actúa como fachada, permitiendo cambiar la implementación subyacente fácilmente.
101
¿Cuáles son algunas implementaciones de SLF4J?
Log4J, LogBack, TinyLog y Apache Commons Logging.
102
¿Qué es un Logger?
Es una entidad asociada a una clase o paquete que gestiona los mensajes de registro.
103
¿Qué es un Appender en logging?
Es el destino donde se envían los logs, como la consola, un archivo o una base de datos.
104
¿Qué es un Layout o Encoder en logging?
Es el formato en el que se presentan los mensajes de log.
105
¿Qué son los niveles de logging?
Son prioridades que determinan qué mensajes se registran, desde ALL hasta OFF.
106
¿Cómo funciona la configuración de niveles en logging?
Solo se registran mensajes del nivel configurado o superiores.
107
¿Qué niveles de logging existen y cuál es su orden?
ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF.
108
Qué mensajes se muestran si el nivel de logging es WARN?
Solo WARN, ERROR y FATAL; los niveles inferiores se ignoran.
109
¿Qué es Socket y ServerSocket en Java?
Son clases para comunicación en red mediante el protocolo TCP/IP a bajo nivel.
110
¿Qué es RMI en Java?
Es una API para programación distribuida que permite llamadas a métodos remotos entre objetos en distintas JVMs.
111
¿Qué debe hacer una interfaz para usarse en RMI?
Debe heredar de Remote y sus métodos deben lanzar RemoteException.
112
¿Cuáles son las principales APIs de interfaces gráficas en Java?
AWT, JFC/Swing y JavaFX.
113
¿Qué es JAXP en Java?
Es una API para el procesamiento de XML que incluye SAX, DOM, StaX y TrAX.
114
¿Para qué sirve JAXB en Java?
Permite convertir objetos Java a XML y viceversa, proporcionando un manejo de datos más alto nivel.
115
¿Qué es la Reflection en Java?
Es la capacidad de inspeccionar y manipular clases, atributos y métodos en tiempo de ejecución.
116
¿Para qué sirven java.awt, javax.swing y javafx?
Son paquetes que permiten crear interfaces gráficas para aplicaciones de escritorio.
117
Paquete java.lang ¿Para qué se usa la interfaz Comparable?
Para definir un orden natural en objetos mediante el método compareTo().
118
Paquete java.lang ¿Cuál es la diferencia entre Runnable y Thread?
Runnable permite definir la lógica de un hilo sin heredar de Thread, facilitando la reutilización.
119
Paquete java.lang ¿Qué es la interfaz Iterable?
Permite recorrer colecciones con un iterador y es la superinterfaz de Collection.
120
Paquete java.lang ¿Qué son las clases Integer, Float, Double, etc.?
Son envoltorios (wrappers) para tipos primitivos, permitiendo su uso como objetos.
121
Paquete java.lang ¿Qué representa la clase Thread?
Un hilo de ejecución, gestionado mediante los métodos run() y start().
122
Paquete java.lang ¿Cuál es la función de la clase Object?
Es la superclase de todas las clases en Java y define métodos como toString(), equals(), wait() y notify().
123
Paquete java.lang ¿Para qué sirve la clase Class?
Permite inspeccionar y manipular dinámicamente los miembros de un objeto (Reflection).
124
Paquete java.lang ¿Diferencia entre String, StringBuffer y StringBuilder?
String es inmutable, StringBuffer es mutable y sincronizado, y StringBuilder es mutable pero no sincronizado.
125
Paquete java.lang ¿Qué funciones tiene la clase System?
Proporciona acceso a entrada/salida estándar y propiedades del sistema.
126
Paquete java.lang ¿Para qué sirve la clase Math?
Permite realizar operaciones matemáticas avanzadas, como trigonometría y exponenciales.
127
Paquete java.io y java.nio.file ¿Para qué sirve la interfaz Closeable?
Permite que los objetos sean cerrados automáticamente con try-with-resources, usando el método close().
128
Paquete java.io y java.nio.file ¿Qué hace la interfaz Serializable?
Permite convertir un objeto en un flujo de bytes para enviarlo por red o guardarlo en almacenamiento externo.
129
Paquete java.io y java.nio.file ¿Para qué sirve la clase File en Java?
Es una alternativa a InputStream y OutputStream para la manipulación eficiente de archivos en java.nio.
130
Paquete java.io y java.nio.file ¿Cuál es la función de Files en Java?
Proporciona métodos estáticos para operaciones con archivos, como copiar, mover, leer y escribir.
131
Paquete java.io y java.nio.file ¿Qué representa la clase FileSystem?
Gestiona los sistemas de archivos y permite obtener información sobre la estructura del almacenamiento.
132
Paquete java.io y java.nio.file ¿Para qué se usa la clase Path?
Representa rutas de archivos y directorios de forma flexible en java.nio.file.
133
Paquete java.io y java.nio.file ¿Qué hace la clase Console?
Permite la interacción con la entrada/salida de la consola de manera segura.
134
Paquete java.io y java.nio.file ¿Cuál es la diferencia entre Readers/Writers e InputStreams/OutputStreams?
Readers/Writers manejan caracteres, mientras que InputStreams/OutputStreams manejan bytes a bajo nivel.
135
Paquete java.util ¿Qué es Collection en Java?
Es la interfaz raíz de todas las colecciones e incluye métodos como add(e), size(), remove(e) y clear().
136
Paquete java.util ¿Cuál es la característica principal de List?
Mantiene el orden de inserción y permite elementos duplicados. Métodos clave: get(index), add(index, e).
137
Paquete java.util ¿Qué define a un Set?
Es una colección que no permite elementos duplicados. Se usa contains(e) para verificar la existencia de un elemento.
138
Paquete java.util ¿Cómo funciona una Queue en Java?
Sigue el principio FIFO (First In, First Out) y tiene métodos como peek(), poll() y remove().
139
Paquete java.util ¿Qué diferencia a un Map de otras colecciones?
Almacena pares clave-valor en lugar de elementos individuales. Se accede con put(k, e) y get(k).
140
Paquete java.util ¿Para qué sirve la interfaz Observer?
Implementa el patrón de diseño Observer, permitiendo detectar cambios y notificar a los interesados.
141
Paquete java.util ¿Qué es un Iterator y cómo funciona?
Permite recorrer colecciones de forma genérica con los métodos next() y hasNext().
142
Paquete java.util ¿Cuál es la diferencia entre ArrayList y LinkedList?
ArrayList usa un array dinámico, mientras que LinkedList es una lista doblemente enlazada, ideal para inserciones y eliminaciones frecuentes.
143
Paquete java.util ¿En qué se diferencia Hashtable de HashMap?
Hashtable es thread-safe y no permite claves ni valores null, mientras que HashMap sí lo permite y no es sincronizado.
144
Paquete java.util ¿Para qué se usa StringTokenizer?
Para dividir un texto en fragmentos (tokens) usando delimitadores específicos.
145
Paquete java.util ¿Qué hacen Pattern y Matcher?
Permiten realizar búsquedas avanzadas con expresiones regulares.
146
Paquete java.util ¿Cuál es la función de la clase Properties?
Lee y escribe archivos de configuración en formato clave=valor.
147
Paquete java.util ¿Cómo funciona Calendar en Java?
Maneja fechas y permite realizar operaciones como sumar días o meses.
148
Paquete java.util ¿Para qué se usa Base64?
Codifica y decodifica datos en formato Base64, útil para transmitir información binaria como texto.
149
Paquete java.util ¿Qué es un UUID?
Un identificador único generado con el algoritmo UUID, útil para claves únicas.
150
Paquete java.util ¿Por qué Date es considerada obsoleta?
Porque java.time en Java 8 la reemplaza con una mejor API de fechas y horas.
151
Paquete java.util ¿Cómo funciona una Stack?
Sigue el orden LIFO (Last In, First Out) y usa push(e), pop(), y peek().
152
Paquete java.util ¿Para qué sirven Timer y TimerTask?
Permiten programar tareas para ejecutarse después de un tiempo o repetidamente.
153
Paquete java.util ¿Qué hace Scanner en Java?
Facilita la lectura de datos del usuario desde la entrada estándar (System.in).
154
Paquete java.sql y javax.sql ¿Cuál es la diferencia entre Driver y DataSource?
Driver es la forma tradicional de obtener una conexión a la base de datos, mientras que DataSource usa un pool de conexiones, mejorando el rendimiento y la gestión.
155
Paquete java.sql y javax.sql ¿Qué representa la interfaz Connection?
Es la conexión abierta a la base de datos, usada para ejecutar sentencias SQL y manejar transacciones.
156
Paquete java.sql y javax.sql ¿Qué es un Statement?
Es una interfaz para ejecutar una sentencia SQL estática sin parámetros, como un SELECT, INSERT, UPDATE, etc.
157
Paquete java.sql y javax.sql ¿En qué se diferencia un PreparedStatement de un Statement?
PreparedStatement permite ejecutar sentencias SQL con parámetros, mejorando el rendimiento y seguridad al ser precompilada.
158
Paquete java.sql y javax.sql ¿Qué es un CallableStatement?
Es una interfaz para ejecutar procedimientos almacenados en la base de datos.
159
Paquete java.sql y javax.sql ¿Qué es un ResultSet?
Es el conjunto de resultados que devuelve una consulta SELECT, y se maneja como un cursor en la base de datos.
160
Paquete java.sql y javax.sql ¿Qué hace ResultSetMetaData?
Proporciona información sobre los metadatos de un ResultSet, como el número de columnas y el tipo de datos de cada columna.
161
Paquete java.net ¿Para qué se usa Socket y ServerSocket?
Socket permite la comunicación cliente-servidor mediante TCP/IP, mientras que ServerSocket escucha conexiones entrantes.
162
Paquete java.net ¿Para qué sirve URL y URLConnection?
URL representa una dirección web, y URLConnection permite establecer una conexión para enviar y recibir datos.
163
Paquete java.net ¿Qué hacen Inet4Address e Inet6Address?
Representan direcciones IP, Inet4Address para IPv4 y Inet6Address para IPv6.
164
Paquete java.net ¿Para qué se usa Proxy en java.net?
Permite configurar conexiones a través de un servidor proxy.
165
Paquete java.time ¿Qué representa Instant?
Un instante en el tiempo en la línea temporal, útil para trabajar con timestamps.
166
Paquete java.time ¿Qué diferencia hay entre Duration y Period?
Duration mide tiempo en horas, minutos y segundos, mientras que Period lo mide en días, meses y años.
167
Paquete java.time ¿Para qué se usa LocalDate, LocalTime y LocalDateTime?
LocalDate maneja fechas sin hora, LocalTime solo horas y LocalDateTime ambas sin zona horaria.
168
Paquete java.text ¿Para qué se usa SimpleDateFormat?
Convierte una fecha (Date) en texto (String) y viceversa con un formato específico.
169
Paquete java.text ¿Cómo se usa parse(String) en SimpleDateFormat?
Convierte un String en un objeto Date siguiendo un formato dado.
170
Paquete java.text ¿Cómo se usa format(Date) en SimpleDateFormat?
Convierte un Date en un String con el formato deseado.
171
Paquete java.xml.parsers ¿Para qué se usa DocumentBuilder?
Permite obtener instancias de documentos DOM a partir de archivos XML.
172
Paquete java.xml.parsers ¿Qué hace SAXParser?
Es un analizador basado en eventos (SAX) para leer y procesar XML de manera eficiente.
173
Paquete javax.jws (SOAP) ¿Para qué se usa @WebService y @WebMethod?
@WebService define un servicio SOAP y @WebMethod expone métodos como operaciones web.
174
Paquete javax.xml.ws ¿Qué hace EndPoint.publish(...)?
Publica un servicio web para que pueda ser accedido mediante SOAP.
175
Paquete org.w3c.dom ¿Para qué se usa org.w3c.dom?
Define las interfaces para manipular documentos XML como un árbol DOM.
176
Paquete org.xml.sax ¿Para qué se usa org.xml.sax?
Proporciona las interfaces para el procesamiento XML basado en eventos SAX.
177
Novedades 1.7 y 1.8 en adelante ¿Qué son los Streams en Java?
Permiten procesar datos en secuencia sin necesidad de estructuras intermedias, encadenando operaciones como filter(), map(), reduce().
178
Novedades 1.7 y 1.8 en adelante ¿Para qué se usa mapToInt en un stream?
Convierte elementos de un Stream en un IntStream, facilitando operaciones como average().
179
Novedades 1.7 y 1.8 en adelante ¿Cómo funciona forEach en Streams?
Ejecuta una acción sobre cada elemento del stream, similar a un bucle for.
180
Novedades 1.7 y 1.8 en adelante ¿Qué es una expresión lambda en Java?
Es una función anónima que permite escribir código más compacto para operar sobre colecciones y streams.
181
Novedades 1.7 y 1.8 en adelante ¿Cómo se usa filter() en un Stream?
Filtra elementos que cumplen una condición, devolviendo solo los que la cumplen.
182
Novedades 1.7 y 1.8 en adelante ¿Qué es try-with-resources?
Permite cerrar automáticamente recursos como archivos o conexiones sin necesidad de un finally.
183
Novedades 1.7 y 1.8 en adelante ¿Cómo funciona multi-catch en Java?
Permite capturar varias excepciones en un solo catch, separándolas con |.
184
Novedades 1.7 y 1.8 en adelante ¿Qué pasó con el motor de script en Java?
Fue eliminado y reemplazado por GraalVM, que permite ejecutar múltiples lenguajes en la JVM.
185
Novedades 1.7 y 1.8 en adelante ¿Qué es una interfaz funcional en Java?
Es una interfaz con un único método abstracto, usada en programación funcional y lambdas.
186
Novedades 1.7 y 1.8 en adelante ¿Para qué sirve default en interfaces?
Permite definir métodos con implementación dentro de interfaces sin afectar clases existentes.
187
Novedades 1.7 y 1.8 en adelante ¿Para qué se usa CompletableFuture?
Facilita la programación concurrente permitiendo ejecutar tareas de forma asíncrona.
188
¿Qué reemplazó a Date en Java 8?
La API java.time, basada en Joda-Time, con clases como LocalDate, Instant y Duration.
189
Novedades 1.7 y 1.8 en adelante ¿Cómo ayuda Optional en Java?
Evita NullPointerException al manejar valores opcionales sin usar null.
190
Novedades 14+ ¿Para qué sirve record en Java?
Define clases inmutables para representar datos (DTO, Value Objects) con menos código.
191
Novedades 9+ ¿Qué define el archivo module-info.java?
Gestiona dependencias y servicios de un módulo, mejorando la encapsulación y mantenibilidad.
192
¿Qué es un IDE y qué ejemplos hay?
Es un entorno de desarrollo con herramientas para programar. Ejemplos: Eclipse, IntelliJ, NetBeans.
193
¿Qué es un workspace en Eclipse?
Es una forma de organizar proyectos en Eclipse. Usa archivos .classpath y .project.
194
¿Qué implementaciones de JDK existen?
Algunas son OpenJDK, Amazon Corretto e IBM JDK.
195
¿Para qué sirven Liquibase y Flyway?
Automatizan la gestión de migraciones de bases de datos.
196
¿Qué herramientas se usan para automatizar el desarrollo?
Ejemplos: Ant (build.xml), Maven (pom.xml), Gradle (build.gradle), Ivy y Jenkins.
197
Maven ¿Qué hace una herramienta de automatización de la construcción?
Localiza código fuente y configuración, lo compila, lo empaqueta y ejecuta tests.
198
¿Cómo maneja Maven las dependencias?
Usa repositorios y define dependencias en pom.xml. También admite archetypes (plantillas de proyectos).
199
¿Cómo se ejecuta Maven?
Es una herramienta independiente en Java que puede usarse por línea de comandos o desde un IDE.
200
Qué es el pom.xml en Maven?
Es el archivo principal donde se definen dependencias, configuración y tipo de proyecto.
201
¿Dónde guarda Maven los .jar descargados?
En el directorio local .m2, desde donde los usa para compilar y empaquetar.
202
¿Cuáles son las coordenadas de un artefacto Maven?
Son groupId, artifactId y version, y deben ser únicas por fabricante.
203
¿Dónde deben guardarse los archivos Java en Maven?
En src/main/java, siguiendo la estructura estándar de Maven.
204
¿Qué hace mvn package?
Compila, empaqueta y genera un .jar o .war en el directorio target.
205
¿Qué librerías permiten generar PDFs en Java?
iText y PDFBox son las más utilizadas para crear y manipular documentos PDF.
206
¿Qué es BouncyCastle?
Es una librería para implementar algoritmos criptográficos en Java.
207
¿Qué librerías existen para logging?
Log4j, Logback y SLF4J permiten gestionar logs en aplicaciones Java.
208
¿Qué librerías se usan para XML y XSL en Java?
Xerces, Xalan, Woodstox y Apache FOP permiten parsear XML y procesar XSL.
209
¿Qué librerías se usan para pruebas unitarias y de carga?
JUnit y Mockito para unitarias; JMeter para pruebas de carga.
210
¿Qué ofrecen Apache Commons y Guava?
Utilidades para manipulación de cadenas, colecciones, archivos, criptografía y más.
211
¿Qué librería permite hacer peticiones HTTP en Java?
Apache HttpClient (HttpComponents), aunque desde Java 11 se usa java.net.http.HttpClient.
212
¿Qué librerías se usan para trabajar con JSON?
Gson y Jackson permiten convertir objetos Java a JSON y viceversa.
213
¿Qué librería permite manipular archivos de Office?
Apache POI permite leer y escribir documentos Excel, Word y PowerPoint.
214
¿Para qué sirve Apache Tika?
Permite detectar y extraer contenido de múltiples formatos de archivos.
215
¿Qué es Pentaho Kettle?
Es una herramienta ETL para extraer, transformar y cargar datos.
216
¿Para qué se usa Project Lombok?
Genera automáticamente getters, setters, constructores y más mediante anotaciones.
217
¿Qué es Spring MVC?
Es uno de los frameworks más populares para desarrollar aplicaciones web en Java.
218