UD1 — Test de repaso
Resultado de Aprendizaje 1 — Reconoce la estructura de un programa informático, identificando y relacionando los elementos propios del lenguaje de programación utilizado.
IES Thiar · Curso 2026 - 2027
1. ¿Qué es programar? Java en el mundo real
Pregunta 1
¿Cuál es la diferencia fundamental entre un algoritmo y un programa?
Pregunta 2
De las siguientes cinco propiedades, ¿cuál NO es obligatoria para que una secuencia de pasos merezca el nombre de algoritmo?
Pregunta 3
La propiedad "definido" de un algoritmo significa que…
Pregunta 4
Java nació en 1991 dentro de Sun Microsystems en un proyecto llamado "Green Project" para programar electrodomésticos. ¿Cuál era el nombre original del lenguaje antes de ser rebautizado como Java?
Pregunta 5
El eslogan "Write Once, Run Anywhere" (WORA) significa que…
Pregunta 6
¿Cuál de las siguientes afirmaciones sobre las versiones LTS (Long Term Support) de Java es falsa?
Pregunta 7
El bytecode de Java (ficheros .class) es…
Pregunta 8
¿Qué componente de la plataforma Java es responsable de ejecutar el bytecode en una máquina concreta?
Pregunta 9
La diferencia entre JDK y JRE es que…
2. IntelliJ IDEA y Maven: el entorno de trabajo
Pregunta 11
¿Qué es un IDE (Entorno de Desarrollo Integrado)?
Pregunta 12
¿Qué IDE usamos en el ciclo y por qué?
Pregunta 13
En un proyecto Maven, el archivo pom.xml contiene…
Pregunta 14
¿Cuáles son las tres coordenadas mínimas que identifican unívocamente un artefacto Maven?
Pregunta 15
¿Para qué sirve el comando mvn clean?
Pregunta 16
¿Qué comando Maven compila el proyecto sin ejecutar pruebas ni empaquetar?
Pregunta 17
¿Qué comando Maven genera el .jar del proyecto?
Pregunta 18
En la estructura estándar de carpetas Maven, ¿dónde colocas tu código fuente Java (.java)?
Pregunta 19
¿Qué carpetas de un proyecto Maven NO deberías versionar en Git?
Pregunta 20
El sufijo -SNAPSHOT en una versión Maven (p. ej. 1.0-SNAPSHOT) indica que…
3. Estructura de un programa Java
Pregunta 22
En Java 25 (JEP 512), ¿cuál es la forma más simple de escribir un programa "Hola, mundo"?
Pregunta 23
En la forma clásica de un programa Java con clase explícita, los tres bloques mínimos son…
Pregunta 24
¿Qué palabra reservada marca el punto de entrada de un programa Java clásico (con clase explícita)?
Pregunta 25
¿Cuál es la firma correcta del método main en la forma clásica de Java?
Pregunta 26
En Java 25, ¿qué significa "instance main methods"?
Pregunta 27
¿Cuáles de los siguientes son tipos de comentarios válidos en Java? (varias respuestas)
Pregunta 28
¿Para qué se utiliza el comentario Javadoc (/** ... */)?
Pregunta 29
¿Cuál de los siguientes NO es un buen hábito con comentarios?
Pregunta 30
¿Qué son las palabras reservadas en Java?
Pregunta 31
Indica cuál de los siguientes no es un identificador válido en Java:
4. Variables y tipos primitivos
Pregunta 33
¿Cuántos tipos primitivos tiene Java?
Pregunta 34
¿Cuáles son los 8 tipos primitivos de Java? (varias respuestas)
Pregunta 35
¿Qué tipo primitivo usarías para almacenar la edad de una persona (0-125)?
Pregunta 36
¿Cuál es el rango del tipo byte en Java?
Pregunta 37
¿Cuántos bits ocupa un int en Java?
Pregunta 38
¿Qué tipo de dato usarías para almacenar el sueldo anual en euros con céntimos?
Pregunta 39
¿Cuál es la diferencia clave entre float y double?
Pregunta 40
Para almacenar un único carácter como la inicial de un nombre, usamos el tipo…
Pregunta 41
¿Qué palabra reservada permite la inferencia de tipos desde Java 10?
Pregunta 42
¿Cuál de las siguientes declaraciones con var NO compila?
Pregunta 43
Java es un lenguaje fuertemente tipado. Esto significa que…
Pregunta 44
¿Cuál de los siguientes literales es válido para un long?
5. Operadores
Pregunta 46
¿Cuál es el resultado de 7 / 2 si ambos operandos son int?
Pregunta 47
¿Y si al menos uno de los operandos es double? Por ejemplo, 7 / 2.0
Pregunta 48
¿Qué operador se usa para el módulo (resto de división entera)?
Pregunta 49
¿Cuál es el resultado de 7 % 2?
Pregunta 50
¿Qué imprime el siguiente código?
| int x = 5;
int y = x++;
System.out.println("x=" + x + ", y=" + y);
|
Pregunta 51
¿Y con pre-incremento?
| int x = 5;
int y = ++x;
System.out.println("x=" + x + ", y=" + y);
|
Pregunta 52
¿Qué operadores relacionales devuelve un boolean? (varias respuestas)
Pregunta 53
Los operadores lógicos en Java son (varias respuestas):
Pregunta 54
¿Qué significa que && y || operan con cortocircuito?
Pregunta 55
Dado boolean cond = (a != 0) && (10 / a > 1);, si a vale 0…
Pregunta 56
El operador += es un operador de asignación compuesta. ¿A qué equivale x += 5;?
Pregunta 57
¿Cuál es la precedencia correcta entre operadores aritméticos?
Pregunta 58
¿Qué imprime 1 + 2 + "3" en Java?
Pregunta 59
¿Y qué imprime "" + 1 + 2?
6. Constantes y literales
Pregunta 61
¿Qué palabra reservada convierte una variable en constante en Java?
Pregunta 62
¿Qué ocurre si intentas modificar una variable declarada final?
Pregunta 63
¿Cuál es la combinación estándar para declarar una constante de clase compartida por todas las instancias?
Pregunta 64
Por convención, los nombres de constantes en Java se escriben…
Pregunta 65
¿Cuál de los siguientes NO es un literal válido en Java?
Pregunta 66
¿Qué tipo de literal es 1_000_000?
Pregunta 67
¿Qué prefijo se usa para escribir un literal hexadecimal en Java?
Pregunta 68
¿Y para un literal binario?
Pregunta 69
¿Cuál es la diferencia entre final y static final?
7. El tipo String y texto multilínea
Pregunta 72
¿Es String un tipo primitivo en Java?
Pregunta 73
¿Qué característica importante tienen los objetos String en Java?
Pregunta 74
¿Qué metodo de String devuelve su número de caracteres?
Pregunta 75
Para comparar el contenido de dos String en Java, debes usar…
Pregunta 76
¿Por qué == no es fiable para comparar String?
Pregunta 77
¿Qué imprime el siguiente código?
| String a = "hola";
String b = "hola";
String c = new String("hola");
System.out.println((a == b) + " " + (a == c) + " " + (a.equals(c)));
|
a y b se "internan" al mismo literal; c es un objeto nuevo, así que == falla, pero .equals compara contenido.
Pregunta 78
¿Qué metodo devuelve el carácter en una posición concreta de un String?
Pregunta 79
¿Qué método devuelve una subcadena desde el índice i hasta el final?
Pregunta 80
¿Desde qué versión de Java existen los text blocks ("""...""")?
(estable, tras preview en 13/14)
Pregunta 81
¿Para qué se usan los text blocks?
Pregunta 82
¿Qué método formatea un String con marcadores %s, %d, %f desde Java 15?
Pregunta 83
En un String.format o .formatted, ¿qué marca %d?
Pregunta 85
¿Qué marca %% dentro de un String.format?
Pregunta 86
¿Qué marca %n dentro de un String.format?
8. Conversión de tipos
Pregunta 88
¿Qué es la conversión implícita o widening?
Pregunta 89
¿Cuál de las siguientes asignaciones es un widening válido y automático?
Pregunta 90
¿Cuál de las siguientes conversiones NO se hace automáticamente (requiere cast explícito)?
Pregunta 91
¿Qué operador se usa para el casting explícito (narrowing)?
Pregunta 94
¿Qué ocurre al hacer int x = (int) 5_000_000_000L;?
Pregunta 95
¿Qué método de Math lanza ArithmeticException si un long no cabe en un int?
Pregunta 96
¿Qué es el parseo en Java?
Pregunta 97
¿Qué devuelve Integer.parseInt("42")?
Pregunta 98
¿Qué lanza Integer.parseInt("3.14")?
Pregunta 99
¿Qué lanza Integer.parseInt(" 42 ") (con espacios)?
Pregunta 100
¿Qué devuelve Double.parseDouble("3,14")?
Pregunta 101
¿Cómo convertirías la entrada española "3,14" a double de forma segura?
Pregunta 102
¿Qué devuelve Boolean.parseBoolean("TRUE")?
Pregunta 103
¿Qué devuelve Boolean.parseBoolean("1")?
Pregunta 104
¿Qué devuelve Boolean.parseBoolean("no")?
Pregunta 105
¿Qué método convierte cualquier valor a String de forma null-safe?
Pregunta 106
¿Qué imprime el siguiente código?
| Object o = null;
System.out.println(String.valueOf(o));
System.out.println("" + o);
|
Pregunta 109
¿Qué es java.lang.IO en Java 25?
Pregunta 110
¿Qué método de java.lang.IO lee una línea del teclado mostrando antes un mensaje?
Pregunta 111
¿Qué tipo devuelve IO.readln(...)?
Pregunta 112
¿Es necesario hacer import de java.lang.IO?
Pregunta 113
¿Cuál es la forma correcta de leer un entero del teclado con java.lang.IO?
Pregunta 114
¿Qué problema tiene int n = IO.readln("n: "); directamente?
Pregunta 115
Si el usuario escribe "3,14" con coma decimal, ¿cómo lo conviertes a double correctamente?
Pregunta 117
¿Cuál es una trampa conocida de Scanner al mezclar nextInt() con nextLine()?
Pregunta 118
¿Cómo se soluciona la trampa anterior?
Pregunta 119
¿Qué problema de locale tiene Scanner.nextDouble() en un sistema en español?
Pregunta 120
¿Cómo fuerzas a Scanner a aceptar siempre el punto decimal?
Pregunta 121
¿Qué lanza Integer.parseInt("abc")?
Pregunta 122
¿Qué construcción se usa para capturar la excepción y reaccionar sin que el programa "reviente"?
Pregunta 123
¿Qué imprime el siguiente programa si el usuario escribe 48,50 y luego 10?
| String sImporte = IO.readln("Importe (€): ");
String sPorcentaje = IO.readln("Propina (%): ");
double importe = Double.parseDouble(sImporte.replace(",", "."));
double porcentaje = Double.parseDouble(sPorcentaje.replace(",", "."));
double propina = importe * porcentaje / 100;
IO.println("Propina: " + propina);
|
Pregunta 124
¿Por qué en este curso se prefiere IO.readln + Integer.parseInt frente a Scanner.nextInt()?
Repaso global (transversal a la unidad)
Pregunta 126
Ordena las fases del proceso de desarrollo Java: compilar, ejecutar, escribir el código fuente.
Pregunta 127
¿Cuál de los siguientes es un buen identificador para una constante de tipo double que almacene el IVA general?
Pregunta 128
Dado el siguiente programa, ¿cuál es la salida exacta?
| void main() {
String nombre = "Ana";
int edad = 23;
IO.println("Hola, %s. El año que viene tendrás %d.".formatted(nombre, edad + 1));
}
|
Pregunta 129
¿Cuál de estos no se considera un operador aritmético en Java?
Pregunta 130
Señala las afirmaciones correctas sobre String (varias respuestas):
Pregunta 131
Señala las afirmaciones correctas sobre las constantes en Java (varias respuestas):
Pregunta 132
Señala las afirmaciones correctas sobre la conversión de tipos (varias respuestas):
Pregunta 133
Señala las afirmaciones correctas sobre java.lang.IO en Java 25 (varias respuestas):
Resumen final
Has completado el test de repaso de la Unidad 1: Fundamentos de Programación. Si has acertado al menos el 80% de las preguntas, puedes considerar que dominas los conceptos clave del RA1:
- CE 1.1: estructura de un programa (clase,
main, sentencias, JEP 512).
- CE 1.2: proyectos Maven y coordenadas (
groupId, artifactId, version).
- CE 1.3: entorno integrado de desarrollo (IntelliJ IDEA Community).
- CE 1.4: los 8 tipos primitivos y
var.
- CE 1.5: declaración y uso de variables (
String, tipos primitivos).
- CE 1.6: constantes (
final, static final) y literales.
- CE 1.7: operadores aritméticos, relacionales, lógicos, ternarios, de asignación.
- CE 1.8: conversiones implícitas y explícitas, parseo de cadenas.
- CE 1.9: comentarios (
//, /* */, /** */ Javadoc) y buenas prácticas.
Si has fallado algunas preguntas, vuelve a la sección correspondiente del material y repasa antes de la prueba objetiva.