SlideShare una empresa de Scribd logo
1 de 15
Preguntas JAVA
¡Por supuesto! Aquí tienes 100 preguntas y respuestas para preparar un examen de Java 17:
1. Pregunta: ¿Qué es Java?
Respuesta: Java es un lenguaje de programación de alto nivel y orientado a objetos
desarrollado por Sun Microsystems.
2. Pregunta: ¿Cuál es el JDK?
Respuesta: El JDK (Java Development Kit) es un conjunto de herramientas que permite
desarrollar, compilar y ejecutar aplicaciones Java.
3. Pregunta: ¿Cuál es el JRE?
Respuesta: El JRE (Java Runtime Environment) es un conjunto de bibliotecas y archivos
necesarios para ejecutar aplicaciones Java.
4. Pregunta: ¿Cuál es la diferencia entre el JDK y el JRE?
Respuesta: El JDK incluye el JRE y herramientas adicionales para el desarrollo, como el
compilador Java (javac) y el depurador (jdb).
5. Pregunta: ¿Cuáles son los principios de la programación orientada a objetos (POO)?
Respuesta: Encapsulación, herencia, y polimorfismo.
6. Pregunta: ¿Qué es la encapsulación?
Respuesta: La encapsulación es el concepto de ocultar los detalles internos de un objeto y
exponer solo los métodos necesarios para interactuar con él.
7. Pregunta: ¿Qué es la herencia?
Respuesta: La herencia es un mecanismo que permite que una clase adquiera propiedades y
comportamientos de otra clase.
8. Pregunta: ¿Qué es el polimorfismo?
Respuesta: El polimorfismo es la capacidad de un objeto de tomar diferentes formas y
responder a llamadas de métodos de manera diferente.
9. Pregunta: ¿Qué es un objeto en Java?
Respuesta: Un objeto es una instancia de una clase que tiene sus propios atributos y
métodos.
10. Pregunta: ¿Cuál es la diferencia entre una clase y un objeto?
Respuesta: Una clase es un modelo o plantilla que define la estructura y el comportamiento
de los objetos, mientras que un objeto es una instancia concreta de esa clase.
11. Pregunta: ¿Qué es un constructor en Java?
Respuesta: Un constructor es un método especial de una clase que se llama
automáticamente cuando se crea un objeto para inicializar sus valores.
12. Pregunta: ¿Cómo se llama el método que se ejecuta automáticamente al crear un objeto?
Respuesta: El método constructor.
13. Pregunta: ¿Cuál es el propósito del operador "new" en Java?
Respuesta: El operador "new" se utiliza para crear una nueva instancia de una clase, es decir,
para crear un nuevo objeto.
14. Pregunta: ¿Qué es un paquete (package) en Java?
Respuesta: Un paquete es un mecanismo para organizar clases relacionadas en una jerarquía
de directorios.
15. Pregunta: ¿Qué es la palabra clave "import" en Java?
Respuesta: La palabra clave "import" se usa para importar una clase o un paquete para que
estén disponibles en el código actual.
16. Pregunta: ¿Cuál es la diferencia entre una variable local y una variable de instancia?
Respuesta: Una variable local se declara dentro de un método y solo existe dentro de ese
método, mientras que una variable de instancia se declara en una clase y existe durante toda
la vida del objeto.
17. Pregunta: ¿Cómo se declara una constante en Java?
Respuesta: Se utiliza la palabra clave "final" antes de la declaración de la variable.
18. Pregunta: ¿Qué es una interfaz en Java?
Respuesta: Una interfaz es una colección de métodos abstractos y constantes que pueden
ser implementados por una clase.
19. Pregunta: ¿Puede una clase implementar múltiples interfaces en Java?
Respuesta: Sí, una clase puede implementar múltiples interfaces en Java.
20. Pregunta: ¿Qué es el autoboxing y el unboxing en Java?
Respuesta: El autoboxing es la conversión automática de un tipo primitivo a su
correspondiente tipo de objeto, mientras que el unboxing es la conversión automática del tipo
de objeto de vuelta al tipo primitivo.
21. Pregunta: ¿Qué es el Garbage Collector en Java?
Respuesta: El Garbage Collector es un componente de la máquina virtual de Java que se
encarga de liberar la memoria de objetos no utilizados para evitar fugas de memoria.
22. Pregunta: ¿Qué es una excepción en Java?
Respuesta: Una excepción es un evento inesperado o error que ocurre durante la ejecución
de un programa.
23. Pregunta: ¿Qué es el bloque "try-catch" en Java?
Respuesta: El bloque "try-catch" se utiliza para capturar y manejar excepciones en Java.
24. Pregunta: ¿Cuál es la diferencia entre "throw" y "throws" en Java?
Respuesta: "throw" se utiliza para lanzar manualmente una excepción, mientras que
"throws" se utiliza en la firma del método para indicar que el método puede lanzar una
excepción y que el código que lo llama debe manejarla.
25. Pregunta: ¿Qué es una excepción verificada (checked exception) en Java?
Respuesta: Una excepción verificada es una excepción que debe ser declarada en la firma
del método o capturada mediante un bloque "try-catch".
26. Pregunta: ¿Qué es una excepción no verificada (unchecked exception) en Java?
Respuesta: Una excepción no verificada es una excepción que no necesita ser declarada en
la firma del método ni capturada mediante un bloque "try-catch".
27. Pregunta: ¿Qué es la sobrecarga de métodos en Java?
Respuesta: La sobrecarga de métodos es la capacidad de definir varios métodos con el
mismo nombre en una clase, pero con diferentes parámetros.
28. Pregunta: ¿Qué es la anulación de métodos (method overriding) en Java?
Respuesta: La anulación de métodos es la capacidad de una clase hija de proporcionar una
implementación específica para un método definido en la clase padre.
29. Pregunta: ¿Qué es una clase abstracta en Java?
Respuesta: Una clase abstracta es una clase que no se puede instanciar y que puede
contener métodos abstractos y métodos con implementación.
30. Pregunta: ¿Qué es un método abstracto?
Respuesta: Un método abstracto es un método que no tiene implementación y debe ser
definido en las clases hijas.
31. Pregunta: ¿Qué es una clase final en Java? 32. Pregunta: ¿Qué es una variable estática en
Java?
Respuesta: Una variable estática es una variable que pertenece a la clase en lugar de a una
instancia específica de la clase. Se comparte entre todas las instancias de la clase.
33. Pregunta: ¿Cómo se declara una variable estática en Java?
Respuesta: Se utiliza la palabra clave "static" antes de la declaración de la variable.
34. Pregunta: ¿Qué es un método estático en Java?
Respuesta: Un método estático es un método que pertenece a la clase y no a una instancia
específica. Se puede llamar directamente a través de la clase, sin necesidad de crear un objeto.
35. Pregunta: ¿Qué es el operador ternario en Java?
Respuesta: El operador ternario es un operador condicional que permite escribir una
expresión en una sola línea en lugar de usar una declaración "if-else".
36. Pregunta: ¿Cuál es la sintaxis del operador ternario en Java?
Respuesta: "condición ? valor_verdadero : valor_falso".
37. Pregunta: ¿Qué es una enumeración (enum) en Java?
Respuesta: Una enumeración es un tipo de dato que define un conjunto fijo de constantes
con nombre.
38. Pregunta: ¿Cuál es la diferencia entre una clase abstracta y una interfaz en Java?
Respuesta: Una clase abstracta puede tener métodos con implementación, mientras que
una interfaz solo puede tener métodos abstractos. Además, una clase puede implementar
varias interfaces, pero solo puede heredar de una clase abstracta.
39. Pregunta: ¿Qué es el operador instanceof en Java?
Respuesta: El operador "instanceof" se utiliza para comprobar si un objeto es una instancia
de una clase o de una interfaz.
40. Pregunta: ¿Qué es la recursividad en Java?
Respuesta: La recursividad es un enfoque en el que un método se llama a sí mismo para
resolver un problema.
41. Pregunta: ¿Qué es un paquete (jar) en Java?
Respuesta: Un paquete (jar) es un archivo que contiene clases Java compiladas y otros
recursos, que se utilizan para distribuir y compartir bibliotecas o aplicaciones.
42. Pregunta: ¿Qué es el manejo de excepciones en cadena (chained exceptions) en Java?
Respuesta: El manejo de excepciones en cadena permite vincular una excepción a otra, lo
que proporciona información adicional sobre la causa original del problema.
43. Pregunta: ¿Qué es la reflexión en Java?
Respuesta: La reflexión es una API de Java que permite inspeccionar y manipular clases,
interfaces, campos y métodos en tiempo de ejecución.
44. Pregunta: ¿Cuál es la ventaja y desventaja del uso de la reflexión en Java?
Respuesta: La ventaja es que permite una mayor flexibilidad y capacidad de adaptación,
pero la desventaja es que puede disminuir el rendimiento y aumentar la complejidad del
código.
45. Pregunta: ¿Qué es la serialización en Java?
Respuesta: La serialización es el proceso de convertir un objeto en un formato que se puede
almacenar o transmitir y posteriormente recuperar el objeto original.
46. Pregunta: ¿Cómo se hace que una clase sea serializable en Java?
Respuesta: Implementando la interfaz "Serializable" en la clase.
47. Pregunta: ¿Cuál es la diferencia entre una excepción verificada y una excepción no
verificada en Java?
Respuesta: Una excepción verificada debe ser declarada en la firma del método o capturada
mediante un bloque "try-catch", mientras que una excepción no verificada no requiere esta
declaración o captura.
48. Pregunta: ¿Qué es el método "equals()" en Java?
Respuesta: El método "equals()" se utiliza para comparar dos objetos para determinar si son
iguales en contenido.
49. Pregunta: ¿Cómo se sobrescribe el método "equals()" para una clase personalizada?
Respuesta: Se debe proporcionar una implementación personalizada del método "equals()"
en la clase, comparando sus atributos relevantes.
50. Pregunta: ¿Qué es el método "hashCode()" en Java?
Respuesta: El método "hashCode()" devuelve un valor numérico que representa el código
hash del objeto, utilizado para mejorar el rendimiento en estructuras de datos como tablas
hash.
51. Pregunta: ¿Por qué es importante sobrescribir los métodos "hashCode()" y "equals()"
juntos?
Respuesta: Ambos métodos están relacionados con el funcionamiento de estructuras de
datos como tablas hash, y es fundamental que cuando se sobrescribe uno, también se
sobrescriba el otro para mantener la consistencia.
52. Pregunta: ¿Qué es el bucle "for-each" en Java?
Respuesta: El bucle "for-each" se utiliza para iterar a través de elementos de una colección o
un arreglo de manera más sencilla.
53. Pregunta: ¿Qué es el patrón de diseño Singleton en Java?
Respuesta: El patrón Singleton garantiza que una clase tenga solo una instancia y
proporciona un punto de acceso global a esa instancia.
54. Pregunta: ¿Qué es el patrón de diseño Factory en Java?
Respuesta: El patrón Factory proporciona un método para crear objetos de una jerarquía de
clases sin especificar la clase concreta.
55. Pregunta: ¿Qué es el patrón de diseño MVC (Modelo-Vista-Controlador) en Java?
Respuesta: El patrón MVC es un patrón arquitectónico que separa una aplicación en tres
componentes principales: Modelo (datos), Vista (interfaz de usuario) y Controlador (lógica).
56. Pregunta: ¿Qué es el patrón de diseño Observer en Java?
Respuesta: El patrón Observer permite que varios objetos (observadores) sean notificados
automáticamente cuando un objeto (sujeto) cambia su estado.
57. Pregunta: ¿Qué es el patrón de diseño Decorator en Java?
Respuesta: El patrón Decorator permite agregar comportamientos adicionales a un objeto
de manera dinámica, envolviéndolo con objetos decoradores que extienden su funcionalidad.
58. Pregunta: ¿Qué es el patrón de diseño Adapter en Java?
Respuesta: El patrón Adapter se utiliza para permitir que dos interfaces incompatibles
trabajen juntas mediante la creación de una clase que actúa como un adaptador entre ellas.
59. Pregunta: ¿Qué es el patrón de diseño Strategy en Java?
Respuesta: El patrón Strategy permite seleccionar un algoritmo específico en tiempo de
ejecución entre varios disponibles.
60. Pregunta: ¿Qué es el patrón de diseño Composite en Java?
Resp Respuesta: Una clase final es una clase que no puede ser subclaseada por otras
clases.
60. Pregunta: ¿Qué es el patrón de diseño Composite en Java?
Respuesta: El patrón Composite permite tratar objetos individuales y composiciones de
objetos de la misma manera, lo que facilita la creación de estructuras jerárquicas.
61. Pregunta: ¿Qué es el patrón de diseño Template Method en Java?
Respuesta: El patrón Template Method define el esqueleto de un algoritmo en una clase
base, dejando que las subclases implementen ciertos pasos del algoritmo.
62. Pregunta: ¿Qué es el patrón de diseño Builder en Java?
Respuesta: El patrón Builder se utiliza para construir objetos complejos paso a paso,
permitiendo diferentes formas de construir el mismo objeto.
63. Pregunta: ¿Qué es el patrón de diseño Proxy en Java?
Respuesta: El patrón Proxy actúa como un intermediario para controlar el acceso a un objeto
o agregar funcionalidad adicional a un objeto existente.
64. Pregunta: ¿Qué es el patrón de diseño Command en Java?
Respuesta: El patrón Command encapsula una solicitud como un objeto, permitiendo
parametrizar clientes con diferentes solicitudes, encolarlas o registrar su historial.
65. Pregunta: ¿Qué es el patrón de diseño Flyweight en Java?
Respuesta: El patrón Flyweight se utiliza para minimizar el uso de memoria al compartir
datos comunes entre múltiples objetos.
66. Pregunta: ¿Qué es el patrón de diseño State en Java?
Respuesta: El patrón State permite que un objeto cambie su comportamiento cuando su
estado interno cambia.
67. Pregunta: ¿Qué es el patrón de diseño Mediator en Java?
Respuesta: El patrón Mediator define un objeto que controla la comunicación y las
interacciones entre objetos sin que estos se conozcan directamente.
68. Pregunta: ¿Qué es el patrón de diseño Memento en Java?
Respuesta: El patrón Memento permite guardar y restaurar el estado interno de un objeto
sin exponer sus detalles de implementación.
69. Pregunta: ¿Qué es el patrón de diseño Iterator en Java?
Respuesta: El patrón Iterator se utiliza para proporcionar un mecanismo para acceder
secuencialmente a los elementos de una colección sin exponer su estructura interna.
70. Pregunta: ¿Qué es el patrón de diseño Visitor en Java?
Respuesta: El patrón Visitor permite agregar operaciones adicionales a una estructura de
objetos sin modificar los objetos mismos.
71. Pregunta: ¿Qué es el patrón de diseño Chain of Responsibility en Java?
Respuesta: El patrón Chain of Responsibility permite que una serie de objetos maneje una
solicitud secuencialmente hasta que uno de ellos la procese.
72. Pregunta: ¿Qué es el patrón de diseño Facade en Java?
Respuesta: El patrón Facade proporciona una interfaz simplificada para un conjunto de
interfaces más complejo de un subsistema.
73. Pregunta: ¿Qué es el patrón de diseño Null Object en Java?
Respuesta: El patrón Null Object se utiliza para evitar la comprobación de referencias nulas,
proporcionando objetos "nulos" que no hacen nada pero evitan errores de
NullPointerException.
74. Pregunta: ¿Cómo se maneja la concurrencia en Java?
Respuesta: La concurrencia en Java se puede manejar utilizando sincronización, bloqueos,
variables atómicas, clases del paquete "java.util.concurrent", etc.
75. Pregunta: ¿Qué es un hilo (thread) en Java?
Respuesta: Un hilo es una secuencia independiente de ejecución que puede ser utilizada
para realizar tareas concurrentes en un programa Java.
76. Pregunta: ¿Qué es la interfaz Runnable en Java?
Respuesta: La interfaz Runnable se utiliza para definir la tarea que será ejecutada por un
hilo.
77. Pregunta: ¿Qué es la clase Thread en Java?
Respuesta: La clase Thread es una clase de Java que representa un hilo de ejecución y
proporciona métodos para manipularlo.
78. Pregunta: ¿Cuál es la diferencia entre extender la clase Thread y implementar la interfaz
Runnable para crear un hilo en Java?
Respuesta: Java solo admite herencia simple, por lo que al extender la clase Thread, no
podemos extender otra clase. Por lo tanto, es preferible implementar la interfaz Runnable y
luego pasarla a un nuevo objeto Thread para crear un hilo.
79. Pregunta: ¿Qué es la sincronización en Java?
Respuesta: La sincronización en Java se utiliza para evitar que varios hilos accedan
simultáneamente a recursos compartidos y causen condiciones de carrera.
80. Pregunta: ¿Qué es un bloqueo (lock) en Java?
Respuesta: Un bloqueo (lock) es un mecanismo utilizado para controlar el acceso de
múltiples hilos a recursos compartidos, permitiendo que solo un hilo lo utilice a la vez.
81. Pregunta: ¿Cuál es la diferencia entre un bloqueo (lock) explícito y la sincronización
implícita en Java?
Respuesta: La sincronización implícita se logra mediante la palabra clave "synchronized" en
métodos o bloques de código, mientras que un bloqueo explícito se realiza a través de las
clases "Lock" del paquete "java.util.concurrent".
82. Pregunta: ¿Qué es un deadlock en Java?
Respuesta: Un deadlock es una situación en la que dos o más hilos se bloquean mutuamente
porque cada uno está esperando que el otro libere un recurso.
83. Pregunta: ¿Qué es un estado de hilo en Java y cuáles son los posibles estados?
Respuesta: El estado de un hilo en Java representa la etapa actual de su ciclo de vida. Los
posibles estados son: NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING y TERMINATED.
84. Pregunta: ¿Qué es el método "sleep()" en Java?
Respuesta: El método "sleep()" se utiliza para hacer que un hilo se detenga durante un
período específico de tiempo.
85. Pregunta: ¿Qué es el método "yield()" en Java?
Respuesta: El método "yield()" se utiliza para sugerir que el hilo actual ceda el tiempo de
ejecución a otro hilo si hay otros hilos con igual prioridad listos para ejecutarse.
86. Pregunta: ¿Qué es el método "join()" en Java?
Respuesta: El método "join()" se utiliza para esperar a que un hilo se complete antes de que
continúe la ejecución del hilo actual.
87. Pregunta: ¿Qué es un semáforo (semaphore) en Java?
Respuesta: Un semáforo es un mecanismo de sincronización que se utiliza para controlar el
acceso a recursos compartidos por múltiples hilos. Puede tener un número determinado de
permisos disponibles, y los hilos deben adquirir y liberar estos permisos para acceder al
recurso.
88. Pregunta: ¿Qué es la clase AtomicInteger en Java?
Respuesta: La clase AtomicInteger es una clase que proporciona operaciones atómicas para
variables enteras, lo que significa que las operaciones en la variable se garantizan como
indivisibles y no interrumpibles por otros hilos.
89. Pregunta: ¿Qué es la clase CountDownLatch en Java?
Respuesta: La clase CountDownLatch es una clase de sincronización que permite que un hilo
espere a que un número específico de hilos completen sus tareas antes de que el hilo continúe
su ejecución.
90. Pregunta: ¿Qué es la clase CyclicBarrier en Java?
Respuesta: La clase CyclicBarrier es una clase de sincronización que permite que un grupo de
hilos espere hasta que todos los hilos en el grupo lleguen a un punto específico antes de que
todos continúen juntos.
91. Pregunta: ¿Qué es la clase Executor en Java?
Respuesta: La clase Executor es una interfaz que proporciona un mecanismo para ejecutar
tareas de manera asíncrona mediante un grupo de hilos preconfigurados.
92. Pregunta: ¿Qué es el framework Fork/Join en Java?
Respuesta: El framework Fork/Join es un marco de trabajo para la programación paralela
que se basa en la idea de dividir una tarea grande en tareas más pequeñas que se ejecutan en
paralelo.
93. Pregunta: ¿Qué es el framework CompletableFuture en Java?
Respuesta: El framework CompletableFuture proporciona una manera fácil de realizar
programación asíncrona y concurrente en Java utilizando "completions" (finalizaciones).
94. Pregunta: ¿Qué es la programación reactiva en Java?
Respuesta: La programación reactiva es un enfoque para el desarrollo de sistemas que se
basa en el manejo de flujos de datos y eventos asincrónicos de manera eficiente y
concurrente.
95. Pregunta: ¿Qué es el API Stream en Java?
Respuesta: El API Stream es una API de Java que permite realizar operaciones en colecciones
de elementos de manera funcional y declarativa.
96. Pregunta: ¿Qué es el patrón de diseño Observer en Java?
Respuesta: El patrón Observer permite que varios objetos (observadores) sean notificados
automáticamente cuando un objeto (sujeto) cambia su estado.
97. Pregunta: ¿Qué es el patrón de diseño Memento en Java?
Respuesta: El patrón Memento permite guardar y restaurar el estado interno de un objeto
sin exponer sus detalles de implementación.
98. Pregunta: ¿Qué es la programación funcional en Java?
Respuesta: La programación funcional es un paradigma de programación que trata a las
operaciones como evaluaciones de funciones matemáticas y evita cambiar estados y mutar
datos.
99. Pregunta: ¿Qué es el API CompletableFuture en Java?
Respuesta: El API CompletableFuture es una parte del framework CompletableFuture que
proporciona soporte para realizar programación asíncrona en Java.
1. ¿Cuál es el nombre de la nueva característica de Java 17 que permite a los desarrolladores
escribir código más compacto y eficiente?
* Pattern matching
2. ¿Cuál es el nombre del nuevo tipo de datos introducido en Java 17 que puede almacenar
cualquier valor?
* Record
3. ¿Cuál es el nombre de la nueva función introducida en Java 17 que permite a los
desarrolladores escribir código más seguro?
* Text blocks
4. ¿Cuál es el nombre del nuevo paquete introducido en Java 17 que contiene la nueva
característica de patrón de coincidencia?
* java.util.regex
5. ¿Cuál es el nombre de la nueva clase introducida en Java 17 que representa un objeto de
patrón de coincidencia?
* Pattern
6. ¿Cuál es el nombre del nuevo método introducido en Java 17 que permite a los
desarrolladores escribir código más conciso?
* String.matches()
7. ¿Cuál es el nombre del nuevo operador introducido en Java 17 que permite a los
desarrolladores escribir código más conciso?
* ?:
8. ¿Cuál es el nombre del nuevo modificador introducido en Java 17 que permite a los
desarrolladores escribir código más seguro?
* `sealed`
9. ¿Cuál es el nombre del nuevo excepción introducido en Java 17 que permite a los
desarrolladores escribir código más seguro?
* PatternSyntaxException
10. ¿Cuál es el nombre del nuevo error introducido en Java 17 que permite a los
desarrolladores escribir código más seguro?
* PatternSyntaxError
Aquí están las respuestas a las preguntas más específicas:
1. ¿Cuáles son los tres tipos de patrón de coincidencia?
* Case pattern
* Range pattern
* Type pattern
2. ¿Cuál es la sintaxis para usar un patrón de coincidencia?
Pattern pattern = Pattern.compile("pattern");
Matcher matcher = pattern.matcher("string");
if (matcher.matches()) {
// Code to be executed if the pattern matches
}
3. ¿Cuáles son las ventajas de usar patrones de coincidencia?
* Los patrones de coincidencia pueden hacer que el código sea más conciso y fácil de leer.
* Los patrones de coincidencia pueden hacer que el código sea más seguro al detectar errores
temprano.
* Los patrones de coincidencia pueden hacer que el código sea más portable al permitir que el
código se use en diferentes lenguajes de programación.
4. ¿Cuáles son los inconvenientes de usar patrones de coincidencia?
* Los patrones de coincidencia pueden ser más difíciles de aprender que las otras formas de
escribir código.
* Los patrones de coincidencia pueden ser más lentos que las otras formas de escribir código.
* Los patrones de coincidencia pueden no ser compatibles con todas las plataformas.
5. ¿Cuáles son los casos de uso de los patrones de coincidencia?
* Los patrones de coincidencia se pueden usar para validar datos.
* Los patrones de coincidencia se pueden usar para buscar patrones en texto.
* Los patrones de coincidencia se pueden usar para generar código.
* Los patrones de coincidencia se pueden usar para traducir texto.
* Los patrones de coincidencia se pueden usar para escribir juegos.

Más contenido relacionado

La actualidad más candente

Classes and Nested Classes in Java
Classes and Nested Classes in JavaClasses and Nested Classes in Java
Classes and Nested Classes in JavaRavi_Kant_Sahu
 
Ejercicios de test - desarrollo y programación
Ejercicios de test  -  desarrollo y programaciónEjercicios de test  -  desarrollo y programación
Ejercicios de test - desarrollo y programaciónoposicionestic
 
CUESTIONARIO 5 PREGUNTAS DE LOS 6 TEMAS
CUESTIONARIO 5 PREGUNTAS  DE LOS 6 TEMASCUESTIONARIO 5 PREGUNTAS  DE LOS 6 TEMAS
CUESTIONARIO 5 PREGUNTAS DE LOS 6 TEMASValeriaBerrones
 
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UML
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UMLUnidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UML
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UMLCindy Adriana Bohórquez Santana
 
Design Patterns Illustrated
Design Patterns IllustratedDesign Patterns Illustrated
Design Patterns IllustratedHerman Peeren
 
Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRequisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRene Guaman-Quinche
 
Manual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambasManual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambasMoposita1994
 
Analisis de requerimientos de Software
Analisis de requerimientos de SoftwareAnalisis de requerimientos de Software
Analisis de requerimientos de SoftwareFuel Sirpa Mamani
 
Herencia en C++
Herencia en C++Herencia en C++
Herencia en C++joel1386
 
Genesis and Overview of Java
Genesis and Overview of Java Genesis and Overview of Java
Genesis and Overview of Java Ravi_Kant_Sahu
 
C# interview-questions
C# interview-questionsC# interview-questions
C# interview-questionsnicolbiden
 

La actualidad más candente (20)

Inheritance
InheritanceInheritance
Inheritance
 
Classes and Nested Classes in Java
Classes and Nested Classes in JavaClasses and Nested Classes in Java
Classes and Nested Classes in Java
 
Introduction to OOP(in java) BY Govind Singh
Introduction to OOP(in java)  BY Govind SinghIntroduction to OOP(in java)  BY Govind Singh
Introduction to OOP(in java) BY Govind Singh
 
Ejercicios de test - desarrollo y programación
Ejercicios de test  -  desarrollo y programaciónEjercicios de test  -  desarrollo y programación
Ejercicios de test - desarrollo y programación
 
CUESTIONARIO 5 PREGUNTAS DE LOS 6 TEMAS
CUESTIONARIO 5 PREGUNTAS  DE LOS 6 TEMASCUESTIONARIO 5 PREGUNTAS  DE LOS 6 TEMAS
CUESTIONARIO 5 PREGUNTAS DE LOS 6 TEMAS
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UML
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UMLUnidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UML
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UML
 
Design Patterns Illustrated
Design Patterns IllustratedDesign Patterns Illustrated
Design Patterns Illustrated
 
Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRequisitos funcionales y no funcionales
Requisitos funcionales y no funcionales
 
Manual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambasManual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambas
 
Prueba de Caja Blanca
Prueba de Caja BlancaPrueba de Caja Blanca
Prueba de Caja Blanca
 
Analisis de requerimientos de Software
Analisis de requerimientos de SoftwareAnalisis de requerimientos de Software
Analisis de requerimientos de Software
 
Que es api
Que es apiQue es api
Que es api
 
Generics in java
Generics in javaGenerics in java
Generics in java
 
B.Sc. III(VI Sem) Advance Java Unit1: Exception Handling & Multithreading
B.Sc. III(VI Sem) Advance Java Unit1: Exception Handling & MultithreadingB.Sc. III(VI Sem) Advance Java Unit1: Exception Handling & Multithreading
B.Sc. III(VI Sem) Advance Java Unit1: Exception Handling & Multithreading
 
P.O.O.
P.O.O.P.O.O.
P.O.O.
 
Herencia en C++
Herencia en C++Herencia en C++
Herencia en C++
 
Inheritance in java
Inheritance in javaInheritance in java
Inheritance in java
 
Genesis and Overview of Java
Genesis and Overview of Java Genesis and Overview of Java
Genesis and Overview of Java
 
C# interview-questions
C# interview-questionsC# interview-questions
C# interview-questions
 

Similar a Preguntas JAVA.docx

Similar a Preguntas JAVA.docx (20)

08 Herencia
08   Herencia08   Herencia
08 Herencia
 
C3 las clases en java v2
C3 las clases en java v2C3 las clases en java v2
C3 las clases en java v2
 
lenguajejava.pptx
lenguajejava.pptxlenguajejava.pptx
lenguajejava.pptx
 
Cuestionario poo
Cuestionario pooCuestionario poo
Cuestionario poo
 
Cuestionario poo
Cuestionario pooCuestionario poo
Cuestionario poo
 
Cuestionario poo
Cuestionario pooCuestionario poo
Cuestionario poo
 
Cuestionario poo
Cuestionario pooCuestionario poo
Cuestionario poo
 
Cuestionario
Cuestionario Cuestionario
Cuestionario
 
CUESTIONARIO
CUESTIONARIOCUESTIONARIO
CUESTIONARIO
 
Cuestionaio de apoyo
Cuestionaio de apoyoCuestionaio de apoyo
Cuestionaio de apoyo
 
Resuelto
ResueltoResuelto
Resuelto
 
Resuelto
ResueltoResuelto
Resuelto
 
secme-23192.pdf
secme-23192.pdfsecme-23192.pdf
secme-23192.pdf
 
P2 Programacion orientada a objetos con Java.pptx
P2 Programacion orientada a objetos con Java.pptxP2 Programacion orientada a objetos con Java.pptx
P2 Programacion orientada a objetos con Java.pptx
 
Apoyo para examen
Apoyo para examen Apoyo para examen
Apoyo para examen
 
Examen
ExamenExamen
Examen
 
Manual de Java
Manual de JavaManual de Java
Manual de Java
 
java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )
 
Clases abstractas java metodos abstract class api ejemplo ejercicio
Clases abstractas java metodos abstract class api ejemplo ejercicioClases abstractas java metodos abstract class api ejemplo ejercicio
Clases abstractas java metodos abstract class api ejemplo ejercicio
 
Fundamentos de Java
Fundamentos de JavaFundamentos de Java
Fundamentos de Java
 

Preguntas JAVA.docx

  • 1. Preguntas JAVA ¡Por supuesto! Aquí tienes 100 preguntas y respuestas para preparar un examen de Java 17: 1. Pregunta: ¿Qué es Java? Respuesta: Java es un lenguaje de programación de alto nivel y orientado a objetos desarrollado por Sun Microsystems. 2. Pregunta: ¿Cuál es el JDK? Respuesta: El JDK (Java Development Kit) es un conjunto de herramientas que permite desarrollar, compilar y ejecutar aplicaciones Java. 3. Pregunta: ¿Cuál es el JRE? Respuesta: El JRE (Java Runtime Environment) es un conjunto de bibliotecas y archivos necesarios para ejecutar aplicaciones Java. 4. Pregunta: ¿Cuál es la diferencia entre el JDK y el JRE? Respuesta: El JDK incluye el JRE y herramientas adicionales para el desarrollo, como el compilador Java (javac) y el depurador (jdb). 5. Pregunta: ¿Cuáles son los principios de la programación orientada a objetos (POO)? Respuesta: Encapsulación, herencia, y polimorfismo. 6. Pregunta: ¿Qué es la encapsulación? Respuesta: La encapsulación es el concepto de ocultar los detalles internos de un objeto y exponer solo los métodos necesarios para interactuar con él. 7. Pregunta: ¿Qué es la herencia? Respuesta: La herencia es un mecanismo que permite que una clase adquiera propiedades y comportamientos de otra clase. 8. Pregunta: ¿Qué es el polimorfismo? Respuesta: El polimorfismo es la capacidad de un objeto de tomar diferentes formas y responder a llamadas de métodos de manera diferente.
  • 2. 9. Pregunta: ¿Qué es un objeto en Java? Respuesta: Un objeto es una instancia de una clase que tiene sus propios atributos y métodos. 10. Pregunta: ¿Cuál es la diferencia entre una clase y un objeto? Respuesta: Una clase es un modelo o plantilla que define la estructura y el comportamiento de los objetos, mientras que un objeto es una instancia concreta de esa clase. 11. Pregunta: ¿Qué es un constructor en Java? Respuesta: Un constructor es un método especial de una clase que se llama automáticamente cuando se crea un objeto para inicializar sus valores. 12. Pregunta: ¿Cómo se llama el método que se ejecuta automáticamente al crear un objeto? Respuesta: El método constructor. 13. Pregunta: ¿Cuál es el propósito del operador "new" en Java? Respuesta: El operador "new" se utiliza para crear una nueva instancia de una clase, es decir, para crear un nuevo objeto. 14. Pregunta: ¿Qué es un paquete (package) en Java? Respuesta: Un paquete es un mecanismo para organizar clases relacionadas en una jerarquía de directorios. 15. Pregunta: ¿Qué es la palabra clave "import" en Java? Respuesta: La palabra clave "import" se usa para importar una clase o un paquete para que estén disponibles en el código actual. 16. Pregunta: ¿Cuál es la diferencia entre una variable local y una variable de instancia? Respuesta: Una variable local se declara dentro de un método y solo existe dentro de ese método, mientras que una variable de instancia se declara en una clase y existe durante toda la vida del objeto. 17. Pregunta: ¿Cómo se declara una constante en Java? Respuesta: Se utiliza la palabra clave "final" antes de la declaración de la variable.
  • 3. 18. Pregunta: ¿Qué es una interfaz en Java? Respuesta: Una interfaz es una colección de métodos abstractos y constantes que pueden ser implementados por una clase. 19. Pregunta: ¿Puede una clase implementar múltiples interfaces en Java? Respuesta: Sí, una clase puede implementar múltiples interfaces en Java. 20. Pregunta: ¿Qué es el autoboxing y el unboxing en Java? Respuesta: El autoboxing es la conversión automática de un tipo primitivo a su correspondiente tipo de objeto, mientras que el unboxing es la conversión automática del tipo de objeto de vuelta al tipo primitivo. 21. Pregunta: ¿Qué es el Garbage Collector en Java? Respuesta: El Garbage Collector es un componente de la máquina virtual de Java que se encarga de liberar la memoria de objetos no utilizados para evitar fugas de memoria. 22. Pregunta: ¿Qué es una excepción en Java? Respuesta: Una excepción es un evento inesperado o error que ocurre durante la ejecución de un programa. 23. Pregunta: ¿Qué es el bloque "try-catch" en Java? Respuesta: El bloque "try-catch" se utiliza para capturar y manejar excepciones en Java. 24. Pregunta: ¿Cuál es la diferencia entre "throw" y "throws" en Java? Respuesta: "throw" se utiliza para lanzar manualmente una excepción, mientras que "throws" se utiliza en la firma del método para indicar que el método puede lanzar una excepción y que el código que lo llama debe manejarla. 25. Pregunta: ¿Qué es una excepción verificada (checked exception) en Java? Respuesta: Una excepción verificada es una excepción que debe ser declarada en la firma del método o capturada mediante un bloque "try-catch".
  • 4. 26. Pregunta: ¿Qué es una excepción no verificada (unchecked exception) en Java? Respuesta: Una excepción no verificada es una excepción que no necesita ser declarada en la firma del método ni capturada mediante un bloque "try-catch". 27. Pregunta: ¿Qué es la sobrecarga de métodos en Java? Respuesta: La sobrecarga de métodos es la capacidad de definir varios métodos con el mismo nombre en una clase, pero con diferentes parámetros. 28. Pregunta: ¿Qué es la anulación de métodos (method overriding) en Java? Respuesta: La anulación de métodos es la capacidad de una clase hija de proporcionar una implementación específica para un método definido en la clase padre. 29. Pregunta: ¿Qué es una clase abstracta en Java? Respuesta: Una clase abstracta es una clase que no se puede instanciar y que puede contener métodos abstractos y métodos con implementación. 30. Pregunta: ¿Qué es un método abstracto? Respuesta: Un método abstracto es un método que no tiene implementación y debe ser definido en las clases hijas. 31. Pregunta: ¿Qué es una clase final en Java? 32. Pregunta: ¿Qué es una variable estática en Java? Respuesta: Una variable estática es una variable que pertenece a la clase en lugar de a una instancia específica de la clase. Se comparte entre todas las instancias de la clase. 33. Pregunta: ¿Cómo se declara una variable estática en Java? Respuesta: Se utiliza la palabra clave "static" antes de la declaración de la variable. 34. Pregunta: ¿Qué es un método estático en Java? Respuesta: Un método estático es un método que pertenece a la clase y no a una instancia específica. Se puede llamar directamente a través de la clase, sin necesidad de crear un objeto.
  • 5. 35. Pregunta: ¿Qué es el operador ternario en Java? Respuesta: El operador ternario es un operador condicional que permite escribir una expresión en una sola línea en lugar de usar una declaración "if-else". 36. Pregunta: ¿Cuál es la sintaxis del operador ternario en Java? Respuesta: "condición ? valor_verdadero : valor_falso". 37. Pregunta: ¿Qué es una enumeración (enum) en Java? Respuesta: Una enumeración es un tipo de dato que define un conjunto fijo de constantes con nombre. 38. Pregunta: ¿Cuál es la diferencia entre una clase abstracta y una interfaz en Java? Respuesta: Una clase abstracta puede tener métodos con implementación, mientras que una interfaz solo puede tener métodos abstractos. Además, una clase puede implementar varias interfaces, pero solo puede heredar de una clase abstracta. 39. Pregunta: ¿Qué es el operador instanceof en Java? Respuesta: El operador "instanceof" se utiliza para comprobar si un objeto es una instancia de una clase o de una interfaz. 40. Pregunta: ¿Qué es la recursividad en Java? Respuesta: La recursividad es un enfoque en el que un método se llama a sí mismo para resolver un problema. 41. Pregunta: ¿Qué es un paquete (jar) en Java? Respuesta: Un paquete (jar) es un archivo que contiene clases Java compiladas y otros recursos, que se utilizan para distribuir y compartir bibliotecas o aplicaciones. 42. Pregunta: ¿Qué es el manejo de excepciones en cadena (chained exceptions) en Java? Respuesta: El manejo de excepciones en cadena permite vincular una excepción a otra, lo que proporciona información adicional sobre la causa original del problema.
  • 6. 43. Pregunta: ¿Qué es la reflexión en Java? Respuesta: La reflexión es una API de Java que permite inspeccionar y manipular clases, interfaces, campos y métodos en tiempo de ejecución. 44. Pregunta: ¿Cuál es la ventaja y desventaja del uso de la reflexión en Java? Respuesta: La ventaja es que permite una mayor flexibilidad y capacidad de adaptación, pero la desventaja es que puede disminuir el rendimiento y aumentar la complejidad del código. 45. Pregunta: ¿Qué es la serialización en Java? Respuesta: La serialización es el proceso de convertir un objeto en un formato que se puede almacenar o transmitir y posteriormente recuperar el objeto original. 46. Pregunta: ¿Cómo se hace que una clase sea serializable en Java? Respuesta: Implementando la interfaz "Serializable" en la clase. 47. Pregunta: ¿Cuál es la diferencia entre una excepción verificada y una excepción no verificada en Java? Respuesta: Una excepción verificada debe ser declarada en la firma del método o capturada mediante un bloque "try-catch", mientras que una excepción no verificada no requiere esta declaración o captura. 48. Pregunta: ¿Qué es el método "equals()" en Java? Respuesta: El método "equals()" se utiliza para comparar dos objetos para determinar si son iguales en contenido. 49. Pregunta: ¿Cómo se sobrescribe el método "equals()" para una clase personalizada? Respuesta: Se debe proporcionar una implementación personalizada del método "equals()" en la clase, comparando sus atributos relevantes. 50. Pregunta: ¿Qué es el método "hashCode()" en Java? Respuesta: El método "hashCode()" devuelve un valor numérico que representa el código hash del objeto, utilizado para mejorar el rendimiento en estructuras de datos como tablas hash.
  • 7. 51. Pregunta: ¿Por qué es importante sobrescribir los métodos "hashCode()" y "equals()" juntos? Respuesta: Ambos métodos están relacionados con el funcionamiento de estructuras de datos como tablas hash, y es fundamental que cuando se sobrescribe uno, también se sobrescriba el otro para mantener la consistencia. 52. Pregunta: ¿Qué es el bucle "for-each" en Java? Respuesta: El bucle "for-each" se utiliza para iterar a través de elementos de una colección o un arreglo de manera más sencilla. 53. Pregunta: ¿Qué es el patrón de diseño Singleton en Java? Respuesta: El patrón Singleton garantiza que una clase tenga solo una instancia y proporciona un punto de acceso global a esa instancia. 54. Pregunta: ¿Qué es el patrón de diseño Factory en Java? Respuesta: El patrón Factory proporciona un método para crear objetos de una jerarquía de clases sin especificar la clase concreta. 55. Pregunta: ¿Qué es el patrón de diseño MVC (Modelo-Vista-Controlador) en Java? Respuesta: El patrón MVC es un patrón arquitectónico que separa una aplicación en tres componentes principales: Modelo (datos), Vista (interfaz de usuario) y Controlador (lógica). 56. Pregunta: ¿Qué es el patrón de diseño Observer en Java? Respuesta: El patrón Observer permite que varios objetos (observadores) sean notificados automáticamente cuando un objeto (sujeto) cambia su estado. 57. Pregunta: ¿Qué es el patrón de diseño Decorator en Java? Respuesta: El patrón Decorator permite agregar comportamientos adicionales a un objeto de manera dinámica, envolviéndolo con objetos decoradores que extienden su funcionalidad. 58. Pregunta: ¿Qué es el patrón de diseño Adapter en Java? Respuesta: El patrón Adapter se utiliza para permitir que dos interfaces incompatibles trabajen juntas mediante la creación de una clase que actúa como un adaptador entre ellas.
  • 8. 59. Pregunta: ¿Qué es el patrón de diseño Strategy en Java? Respuesta: El patrón Strategy permite seleccionar un algoritmo específico en tiempo de ejecución entre varios disponibles. 60. Pregunta: ¿Qué es el patrón de diseño Composite en Java? Resp Respuesta: Una clase final es una clase que no puede ser subclaseada por otras clases. 60. Pregunta: ¿Qué es el patrón de diseño Composite en Java? Respuesta: El patrón Composite permite tratar objetos individuales y composiciones de objetos de la misma manera, lo que facilita la creación de estructuras jerárquicas. 61. Pregunta: ¿Qué es el patrón de diseño Template Method en Java? Respuesta: El patrón Template Method define el esqueleto de un algoritmo en una clase base, dejando que las subclases implementen ciertos pasos del algoritmo. 62. Pregunta: ¿Qué es el patrón de diseño Builder en Java? Respuesta: El patrón Builder se utiliza para construir objetos complejos paso a paso, permitiendo diferentes formas de construir el mismo objeto. 63. Pregunta: ¿Qué es el patrón de diseño Proxy en Java? Respuesta: El patrón Proxy actúa como un intermediario para controlar el acceso a un objeto o agregar funcionalidad adicional a un objeto existente. 64. Pregunta: ¿Qué es el patrón de diseño Command en Java? Respuesta: El patrón Command encapsula una solicitud como un objeto, permitiendo parametrizar clientes con diferentes solicitudes, encolarlas o registrar su historial. 65. Pregunta: ¿Qué es el patrón de diseño Flyweight en Java? Respuesta: El patrón Flyweight se utiliza para minimizar el uso de memoria al compartir datos comunes entre múltiples objetos. 66. Pregunta: ¿Qué es el patrón de diseño State en Java?
  • 9. Respuesta: El patrón State permite que un objeto cambie su comportamiento cuando su estado interno cambia. 67. Pregunta: ¿Qué es el patrón de diseño Mediator en Java? Respuesta: El patrón Mediator define un objeto que controla la comunicación y las interacciones entre objetos sin que estos se conozcan directamente. 68. Pregunta: ¿Qué es el patrón de diseño Memento en Java? Respuesta: El patrón Memento permite guardar y restaurar el estado interno de un objeto sin exponer sus detalles de implementación. 69. Pregunta: ¿Qué es el patrón de diseño Iterator en Java? Respuesta: El patrón Iterator se utiliza para proporcionar un mecanismo para acceder secuencialmente a los elementos de una colección sin exponer su estructura interna. 70. Pregunta: ¿Qué es el patrón de diseño Visitor en Java? Respuesta: El patrón Visitor permite agregar operaciones adicionales a una estructura de objetos sin modificar los objetos mismos. 71. Pregunta: ¿Qué es el patrón de diseño Chain of Responsibility en Java? Respuesta: El patrón Chain of Responsibility permite que una serie de objetos maneje una solicitud secuencialmente hasta que uno de ellos la procese. 72. Pregunta: ¿Qué es el patrón de diseño Facade en Java? Respuesta: El patrón Facade proporciona una interfaz simplificada para un conjunto de interfaces más complejo de un subsistema. 73. Pregunta: ¿Qué es el patrón de diseño Null Object en Java? Respuesta: El patrón Null Object se utiliza para evitar la comprobación de referencias nulas, proporcionando objetos "nulos" que no hacen nada pero evitan errores de NullPointerException. 74. Pregunta: ¿Cómo se maneja la concurrencia en Java? Respuesta: La concurrencia en Java se puede manejar utilizando sincronización, bloqueos, variables atómicas, clases del paquete "java.util.concurrent", etc.
  • 10. 75. Pregunta: ¿Qué es un hilo (thread) en Java? Respuesta: Un hilo es una secuencia independiente de ejecución que puede ser utilizada para realizar tareas concurrentes en un programa Java. 76. Pregunta: ¿Qué es la interfaz Runnable en Java? Respuesta: La interfaz Runnable se utiliza para definir la tarea que será ejecutada por un hilo. 77. Pregunta: ¿Qué es la clase Thread en Java? Respuesta: La clase Thread es una clase de Java que representa un hilo de ejecución y proporciona métodos para manipularlo. 78. Pregunta: ¿Cuál es la diferencia entre extender la clase Thread y implementar la interfaz Runnable para crear un hilo en Java? Respuesta: Java solo admite herencia simple, por lo que al extender la clase Thread, no podemos extender otra clase. Por lo tanto, es preferible implementar la interfaz Runnable y luego pasarla a un nuevo objeto Thread para crear un hilo. 79. Pregunta: ¿Qué es la sincronización en Java? Respuesta: La sincronización en Java se utiliza para evitar que varios hilos accedan simultáneamente a recursos compartidos y causen condiciones de carrera. 80. Pregunta: ¿Qué es un bloqueo (lock) en Java? Respuesta: Un bloqueo (lock) es un mecanismo utilizado para controlar el acceso de múltiples hilos a recursos compartidos, permitiendo que solo un hilo lo utilice a la vez. 81. Pregunta: ¿Cuál es la diferencia entre un bloqueo (lock) explícito y la sincronización implícita en Java? Respuesta: La sincronización implícita se logra mediante la palabra clave "synchronized" en métodos o bloques de código, mientras que un bloqueo explícito se realiza a través de las clases "Lock" del paquete "java.util.concurrent". 82. Pregunta: ¿Qué es un deadlock en Java?
  • 11. Respuesta: Un deadlock es una situación en la que dos o más hilos se bloquean mutuamente porque cada uno está esperando que el otro libere un recurso. 83. Pregunta: ¿Qué es un estado de hilo en Java y cuáles son los posibles estados? Respuesta: El estado de un hilo en Java representa la etapa actual de su ciclo de vida. Los posibles estados son: NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING y TERMINATED. 84. Pregunta: ¿Qué es el método "sleep()" en Java? Respuesta: El método "sleep()" se utiliza para hacer que un hilo se detenga durante un período específico de tiempo. 85. Pregunta: ¿Qué es el método "yield()" en Java? Respuesta: El método "yield()" se utiliza para sugerir que el hilo actual ceda el tiempo de ejecución a otro hilo si hay otros hilos con igual prioridad listos para ejecutarse. 86. Pregunta: ¿Qué es el método "join()" en Java? Respuesta: El método "join()" se utiliza para esperar a que un hilo se complete antes de que continúe la ejecución del hilo actual. 87. Pregunta: ¿Qué es un semáforo (semaphore) en Java? Respuesta: Un semáforo es un mecanismo de sincronización que se utiliza para controlar el acceso a recursos compartidos por múltiples hilos. Puede tener un número determinado de permisos disponibles, y los hilos deben adquirir y liberar estos permisos para acceder al recurso. 88. Pregunta: ¿Qué es la clase AtomicInteger en Java? Respuesta: La clase AtomicInteger es una clase que proporciona operaciones atómicas para variables enteras, lo que significa que las operaciones en la variable se garantizan como indivisibles y no interrumpibles por otros hilos. 89. Pregunta: ¿Qué es la clase CountDownLatch en Java? Respuesta: La clase CountDownLatch es una clase de sincronización que permite que un hilo espere a que un número específico de hilos completen sus tareas antes de que el hilo continúe su ejecución.
  • 12. 90. Pregunta: ¿Qué es la clase CyclicBarrier en Java? Respuesta: La clase CyclicBarrier es una clase de sincronización que permite que un grupo de hilos espere hasta que todos los hilos en el grupo lleguen a un punto específico antes de que todos continúen juntos. 91. Pregunta: ¿Qué es la clase Executor en Java? Respuesta: La clase Executor es una interfaz que proporciona un mecanismo para ejecutar tareas de manera asíncrona mediante un grupo de hilos preconfigurados. 92. Pregunta: ¿Qué es el framework Fork/Join en Java? Respuesta: El framework Fork/Join es un marco de trabajo para la programación paralela que se basa en la idea de dividir una tarea grande en tareas más pequeñas que se ejecutan en paralelo. 93. Pregunta: ¿Qué es el framework CompletableFuture en Java? Respuesta: El framework CompletableFuture proporciona una manera fácil de realizar programación asíncrona y concurrente en Java utilizando "completions" (finalizaciones). 94. Pregunta: ¿Qué es la programación reactiva en Java? Respuesta: La programación reactiva es un enfoque para el desarrollo de sistemas que se basa en el manejo de flujos de datos y eventos asincrónicos de manera eficiente y concurrente. 95. Pregunta: ¿Qué es el API Stream en Java? Respuesta: El API Stream es una API de Java que permite realizar operaciones en colecciones de elementos de manera funcional y declarativa. 96. Pregunta: ¿Qué es el patrón de diseño Observer en Java? Respuesta: El patrón Observer permite que varios objetos (observadores) sean notificados automáticamente cuando un objeto (sujeto) cambia su estado. 97. Pregunta: ¿Qué es el patrón de diseño Memento en Java? Respuesta: El patrón Memento permite guardar y restaurar el estado interno de un objeto sin exponer sus detalles de implementación.
  • 13. 98. Pregunta: ¿Qué es la programación funcional en Java? Respuesta: La programación funcional es un paradigma de programación que trata a las operaciones como evaluaciones de funciones matemáticas y evita cambiar estados y mutar datos. 99. Pregunta: ¿Qué es el API CompletableFuture en Java? Respuesta: El API CompletableFuture es una parte del framework CompletableFuture que proporciona soporte para realizar programación asíncrona en Java. 1. ¿Cuál es el nombre de la nueva característica de Java 17 que permite a los desarrolladores escribir código más compacto y eficiente? * Pattern matching 2. ¿Cuál es el nombre del nuevo tipo de datos introducido en Java 17 que puede almacenar cualquier valor? * Record 3. ¿Cuál es el nombre de la nueva función introducida en Java 17 que permite a los desarrolladores escribir código más seguro? * Text blocks 4. ¿Cuál es el nombre del nuevo paquete introducido en Java 17 que contiene la nueva característica de patrón de coincidencia? * java.util.regex 5. ¿Cuál es el nombre de la nueva clase introducida en Java 17 que representa un objeto de patrón de coincidencia? * Pattern 6. ¿Cuál es el nombre del nuevo método introducido en Java 17 que permite a los desarrolladores escribir código más conciso? * String.matches() 7. ¿Cuál es el nombre del nuevo operador introducido en Java 17 que permite a los desarrolladores escribir código más conciso? * ?: 8. ¿Cuál es el nombre del nuevo modificador introducido en Java 17 que permite a los desarrolladores escribir código más seguro? * `sealed` 9. ¿Cuál es el nombre del nuevo excepción introducido en Java 17 que permite a los desarrolladores escribir código más seguro?
  • 14. * PatternSyntaxException 10. ¿Cuál es el nombre del nuevo error introducido en Java 17 que permite a los desarrolladores escribir código más seguro? * PatternSyntaxError Aquí están las respuestas a las preguntas más específicas: 1. ¿Cuáles son los tres tipos de patrón de coincidencia? * Case pattern * Range pattern * Type pattern 2. ¿Cuál es la sintaxis para usar un patrón de coincidencia? Pattern pattern = Pattern.compile("pattern"); Matcher matcher = pattern.matcher("string"); if (matcher.matches()) { // Code to be executed if the pattern matches } 3. ¿Cuáles son las ventajas de usar patrones de coincidencia? * Los patrones de coincidencia pueden hacer que el código sea más conciso y fácil de leer. * Los patrones de coincidencia pueden hacer que el código sea más seguro al detectar errores temprano. * Los patrones de coincidencia pueden hacer que el código sea más portable al permitir que el código se use en diferentes lenguajes de programación. 4. ¿Cuáles son los inconvenientes de usar patrones de coincidencia? * Los patrones de coincidencia pueden ser más difíciles de aprender que las otras formas de escribir código. * Los patrones de coincidencia pueden ser más lentos que las otras formas de escribir código. * Los patrones de coincidencia pueden no ser compatibles con todas las plataformas. 5. ¿Cuáles son los casos de uso de los patrones de coincidencia? * Los patrones de coincidencia se pueden usar para validar datos. * Los patrones de coincidencia se pueden usar para buscar patrones en texto. * Los patrones de coincidencia se pueden usar para generar código.
  • 15. * Los patrones de coincidencia se pueden usar para traducir texto. * Los patrones de coincidencia se pueden usar para escribir juegos.