Font size
S
M
L
XL
WorksheetsJava básico - intermedio
Total questions: 99
Worksheet time: 50mins
Name
Class
Date
1.
¿Qué es el encapsulamiento?
a)
Herencia múltiple de clases
b)
Ocultar detalles internos y exponer una interfaz
c)
Compilar sin advertencias
d)
Usar muchas clases internas
2.
¿Qué operador convierte 3.7 en 3?
a)
toInt(3.7)
b)
(int)3.7
c)
cast<int>3.7
d)
3.7 as int
3.
¿Cuál es una forma válida de for-each sobre un arreglo?
a)
for (int x : a) { }
b)
for (a -> x) { }
c)
for (x of a) { }
d)
foreach (x in a) { }
4.
¿Cómo se importa ArrayList?
a)
import java.util.ArrayList;
b)
include java.util.ArrayList;
c)
use java.util.ArrayList;
d)
import java.ArrayList;
5.
throw' sirve para...
a)
Lanzar explícitamente una excepción
b)
Convertir checked a unchecked
c)
Ignorar la excepción
d)
Declarar excepciones en firma
6.
int x=5; System.out.println(++x); imprime...
a)
Error
b)
4.0
c)
5.0
d)
6.0
7.
this(...)' en un constructor...
a)
Convierte el objeto en inmutable
b)
Invoca al GC
c)
Llama a otro constructor de la misma clase
d)
Cierra recursos abiertos
8.
" hola ".trim() produce...
a)
" hola"
b)
Sin cambios
c)
"hola "
d)
"hola"
9.
En Java, los parámetros se pasan...
a)
Por valor para primitivos y referencia para objetos
b)
Siempre por valor (incluidas las referencias)
c)
Por referencia para objetos
d)
Según optimización del compilador
10.
Tras crear 'int[] a = new int[3];' los valores iniciales son...
a)
null, null, null
b)
2001-01-01 00:00:00
c)
0, 0, 0
d)
Indeterminados
11.
¿Cómo se ordena un arreglo de enteros 'a' ascendentemente?
a)
Collections.sort(a) directo
b)
a.sort()
c)
sort(a) global
d)
Arrays.sort(a)
12.
HashSet garantiza...
a)
No hay elementos duplicados
b)
Índices directos
c)
Orden natural de elementos
d)
Orden por inserción
13.
¿Cuál es un nombre de identificador VÁLIDO?
a)
class
b)
_total2
c)
total-valor
d)
2total
14.
ArrayIndexOutOfBoundsException ocurre cuando...
a)
Se compara un array con equals
b)
Se accede a un índice fuera de 0..length-1
c)
Se ordena un array vacío
d)
Se imprime un array con println
15.
Una clase utilitaria (solo métodos static) suele tener...
a)
Herencia múltiple
b)
Muchos constructores públicos
c)
Campos de instancia mutables
d)
Constructor privado
16.
Una interfaz en Java 8+ puede tener...
a)
Métodos default y static
b)
Campos mutables
c)
Herencia múltiple de estado
d)
Constructores públicos
17.
import static java.lang.Math.*;' permite...
a)
Importar paquetes completos sin límites
b)
Usar PI y sqrt sin prefijo Math.
c)
Evitar el classpath
d)
Compilar más rápido siempre
18.
¿Qué clase es inmutable por diseño?
a)
ArrayList
b)
StringBuilder
c)
String
d)
Date (java.util) mutable
19.
"Java".substring(1,3) produce...
a)
"av"
b)
"va" con error
c)
"Ja"
d)
"ava"
20.
Coveniencia de 'var' (Java 10) en variables locales:
a)
Solo en campos estáticos
b)
Inferencia de tipo en locales sin perder tipado estático
c)
Cambia el tipo en runtime
d)
Tipado dinámico total
21.
toString() sirve para...
a)
Representación legible del objeto
b)
Comparar objetos
c)
Clonar objetos
d)
Serializar por defecto
22.
¿Qué es try-with-resources?
a)
Un patrón de hilos
b)
Un try sin catch
c)
Try que cierra recursos AutoCloseable automáticamente
d)
Una directiva del compilador
23.
¿Cómo obtienes el tamaño de un ArrayList 'list'?
a)
list.count()
b)
list.length
c)
size(list)
d)
list.size()
24.
String s = "hola"; s.length() retorna...
a)
Depende de la JVM
b)
3.0
c)
5.0
d)
4.0
25.
Para concatenar repetidamente en bucle es mejor usar...
a)
StringBufferInput
b)
StringJoiner sin bucle
c)
String directo con +
d)
StringBuilder
26.
En Scanner, nextLine() vs nextInt():
a)
Ambos consumen el salto de línea
b)
nextInt lee Strings también
c)
Son equivalentes
d)
nextLine lee hasta fin de línea; nextInt deja el salto pendiente
27.
Diferencia correcta: sobrecarga vs sobreescritura
a)
Sobrescritura cambia el nombre del método
b)
Sobrecarga solo cambia el valor de retorno
c)
Sobrecarga cambia parámetros; sobreescritura redefine en subclase la misma firma
d)
Son equivalentes
28.
Autoboxing es...
a)
Conversión entre String e int
b)
Conversión entre char y String
c)
Conversión automática entre primitivo y wrapper
d)
Conversión entre double y float
29.
Usar una referencia null suele causar...
a)
IndexOutOfBoundsException
b)
IOException
c)
ClassCastException
d)
NullPointerException
30.
Constructores y clase comparten...
a)
Siempre son privados
b)
Mismo nombre y retornan int
c)
Nombre distinto y tipo void
d)
Mismo nombre y no tienen tipo de retorno
31.
Palabra clave para enumerados:
a)
enum
b)
set
c)
enumclass
d)
enumeration
32.
Un downcasting inválido en tiempo de ejecución produce...
a)
IllegalArgumentException
b)
IOException
c)
AssertionError
d)
ClassCastException
33.
La sentencia 'package' debe ubicarse...
a)
Después de todos los imports
b)
Al final del archivo
c)
No importa la posición
d)
Como primera sentencia no comentada del archivo
34.
¿Qué captura un bloque try-catch?
a)
Errores de compilación
b)
Memoria no inicializada
c)
Advertencias del IDE
d)
Excepciones lanzadas en el try
35.
Comparator permite...
a)
Definir orden externo con compare
b)
Cambiar equals en tiempo real
c)
Convertir tipos primitivos
d)
Controlar GC manualmente
36.
¿Qué es polimorfismo?
a)
Clonar objetos por defecto
b)
Usar varios métodos estáticos
c)
Un objeto puede comportarse como su tipo o cualquier supertipo
d)
Evitar herencia por completo
37.
Wrapper de 'int':
a)
Integer
b)
Int
c)
Whole
d)
NumberInt
38.
Sobre '== vs equals' en objetos:
a)
equals siempre usa '=='
b)
==' compara referencias; equals puede comparar contenido
c)
Ambos comparan contenido
d)
Ambos comparan referencias
39.
Convertir String '"123"' a int:
a)
(int) "123"
b)
new Integer("123").int
c)
toInt("123")
d)
Integer.parseInt("123")
40.
Regla de visibilidad al sobreescribir un método:
a)
Siempre debe ser public
b)
Debe hacerse package-private
c)
Debe reducirse a private
d)
No se puede reducir la visibilidad
41.
Ejemplo de 'unchecked' (runtime):
a)
ReflectiveOperationException
b)
SQLException
c)
NullPointerException
d)
IOException
42.
Los constructores...
a)
Se heredan parcialmente
b)
No se heredan
c)
Se convierten en estáticos
d)
Se heredan con 'extends'
43.
¿Qué palabra clave define una constante (referencia no reasignable)?
a)
immutable
b)
const
c)
final
d)
staticfinal
44.
Contrato equals/hashCode: si equals es true entonces...
a)
hashCode puede ser distinto
b)
hashCode debe ser igual
c)
compareTo debe ser 0
d)
toString debe coincidir
45.
¿Qué imprime 'System.out.printf("%d %.2f", 3, 2.0)'?
a)
3.00 2
b)
2000-02-03 00:00:00
c)
3 2.00
d)
2025-02-03 00:00:00
46.
Al sobreescribir equals, también debe...
a)
Ser private
b)
Lanzar excepción si es null
c)
Influir en toString
d)
Sobrescribirse hashCode
47.
¿Cuál es la firma estándar del método principal?
a)
public int main()
b)
public static void main(String[] args)
c)
private void start()
d)
static void main(String args) sin public
48.
switch' con String está disponible desde...
a)
Java 6
b)
Java 7
c)
Java 4
d)
Java 5
49.
Si un campo es 'final' y es una referencia a objeto...
a)
No puede cambiar su estado ni reasignarse
b)
No puede reasignarse, pero el objeto puede mutar
c)
Se recolecta antes por el GC
d)
Se vuelve static automáticamente
50.
El tamaño de un arreglo en Java es...
a)
Ajustable automáticamente
b)
Creciente con add()
c)
Dinámico por defecto
d)
Fijo después de creado
51.
En un constructor, 'super(...)'...
a)
Debe ser la primera sentencia si se usa
b)
Es opcional y siempre implícito a mitad
c)
Puede ir al final
d)
Llama a cualquier método estático
52.
¿Qué estructura repite mientras la condición sea verdadera?
a)
break
b)
switch
c)
case
d)
while
53.
¿Qué es Java en esencia?
a)
Un editor de texto para programadores
b)
Un sistema operativo de código abierto
c)
Un ensamblador para microcontroladores
d)
Un lenguaje de programación orientado a objetos y multiplataforma
54.
varargs' en 'String... args' permite...
a)
Número variable de argumentos
b)
Asegurar inmutabilidad
c)
Declarar un array 2D
d)
Convertir a lista automáticamente
55.
Para ordenar una List<String> 'nombres' ascendente:
a)
Collections.sort(nombres)
b)
nombres.sort() sin Comparator en Java 6
c)
sort(nombres) global
d)
Arrays.sort(nombres) directo
56.
Paquetes y carpetas deben...
a)
Declararse al final del archivo
b)
Ignorarse mutuamente
c)
Usar nombres con espacios
d)
Coincidir en estructura de directorios
57.
Una clase abstracta...
a)
Se puede instanciar directamente
b)
No puede tener métodos implementados
c)
Puede tener métodos con y sin implementación
d)
Siempre es final
58.
finally' se ejecuta...
a)
Solo si hay excepción
b)
Siempre al salir del try (con o sin excepción)
c)
Nunca si hay return dentro
d)
Solo si no hay excepción
59.
Clase eficiente para concatenar en bucle:
a)
StringBuilder
b)
StringPool
c)
String
d)
StringConst
60.
Orden correcto de bloques catch:
a)
Solo uno es permitido
b)
Primero los generales, luego específicos
c)
Primero los más específicos, luego los generales
d)
Cualquier orden
61.
Diferencia principal StringBuilder vs StringBuffer:
a)
StringBuffer es sincronizado; StringBuilder no
b)
StringBuffer es inmutable
c)
StringBuilder es inmutable
d)
No hay diferencias
62.
Compilar y ejecutar Hola.java (clase Hola con main):
a)
run Hola sin compilar
b)
java Hola.java directo
c)
javac Hola.java y luego java Hola
d)
javac Hola y java Hola.class
63.
En 'class Caja<T>', 'T' es...
a)
Una anotación en runtime
b)
Una tupla fija
c)
Un parámetro de tipo genérico
d)
Un comodín obligatorio
64.
¿Qué incluye el JDK además del JRE?
a)
Compilador y herramientas de desarrollo
b)
Navegador web integrado
c)
Sistema de archivos virtual
d)
Controladores de GPU
65.
Sobre el 'String pool':
a)
Hace mutables a los Strings
b)
Impide usar 'new String'
c)
Literales String pueden compartirse internamente
d)
Evita equals
66.
El operador '?:' realiza...
a)
Evaluación condicional en una expresión
b)
Conversión de tipos genéricos
c)
Concatenación de Strings
d)
Finaliza bucles
67.
finally' se ejecuta incluso si hay 'return' en try o catch...
a)
No, nunca con return
b)
Solo si no hubo excepción
c)
Solo si no hay catch
d)
Sí, salvo System.exit o error grave
68.
¿Qué imprime System.out.println(2 + 3 + "4")?
a)
7.0
b)
Error de compilación
c)
234.0
d)
54.0
69.
int x=5; System.out.println(x++); imprime...
a)
5.0
b)
Depende del IDE
c)
Error
d)
6.0
70.
¿Qué imprime System.out.println("2" + 3 + 4)?
a)
7.0
b)
Error de compilación
c)
9.0
d)
234.0
71.
¿Cómo se comenta UNA línea?
a)
// comentario
b)
<!-- comentario -->
c)
/** comentario */
d)
/* comentario */
72.
¿Qué componente ejecuta el bytecode de Java?
a)
La JVM (Java Virtual Machine)
b)
El IDE (Entorno de Desarrollo)
c)
El BIOS del equipo
d)
El JDK (Java Development Kit)
73.
¿Cómo se declara un arreglo de 10 enteros?
a)
int a = int[10];
b)
int a = new int(10);
c)
array<int> a = 10;
d)
int[] a = new int[10];
74.
this' sirve para...
a)
Referirse al objeto actual
b)
Importar paquetes
c)
Finalizar el programa
d)
Crear nueva instancia
75.
Acceso solo dentro de su clase:
a)
private
b)
protected
c)
package-private (default)
d)
public
76.
¿Qué palabra permite heredar de otra clase?
a)
implements
b)
extends
c)
superof
d)
inherits
77.
TreeMap mantiene...
a)
Claves en orden inverso siempre
b)
Claves ordenadas por orden natural o Comparator
c)
Inserción estable por orden de llegada
d)
Hash estable por bucket
78.
Acceso en el mismo paquete y subclases:
a)
private
b)
final
c)
public-only
d)
protected
79.
¿Cuál NO es un tipo primitivo en Java?
a)
int
b)
double
c)
boolean
d)
String
80.
Comparable define...
a)
Conversión a String
b)
Igualdad profunda
c)
Orden natural mediante compareTo
d)
Serialización nativa
81.
Modificar un parámetro referencia dentro de un método (re-asignarlo) afecta...
a)
Solo si es final
b)
Solo si es estático
c)
Siempre al llamador
d)
No a la variable del llamador
82.
Una interfaz es...
a)
Un paquete especial
b)
Una estructura de datos fija
c)
Una clase que no se puede instanciar
d)
Un contrato de métodos a implementar
83.
s.indexOf("x") cuando no está presente retorna...
a)
-1.0
b)
Lanza excepción
c)
null
84.
HashMap permite...
a)
Varias claves null y ningún null en valores
b)
Una clave null y varios valores null
c)
Ninguna clave null pero sí valores null
d)
Ni claves ni valores null
85.
Para comparar arrays por contenido, se usa...
a)
a == b
b)
Arrays.equals(a,b)
c)
compare(a,b) de Object
d)
a.equals(b) directo
86.
Un método abstracto...
a)
No tiene cuerpo y se implementa en subclases
b)
Debe ser private
c)
Debe ser static
d)
Devuelve siempre void
87.
En un archivo .java puede haber...
a)
Cualquier cantidad de clases públicas
b)
Varias clases públicas de nivel superior
c)
Solo interfaces
d)
A lo sumo una clase pública de nivel superior
88.
¿Qué método añade un elemento al final de un ArrayList?
a)
push(e)
b)
enqueue(e)
c)
add(e)
d)
append(e)
89.
static' en un método o campo indica...
a)
Que se serializa por defecto
b)
Que es de acceso privado
c)
Que es inmutable
d)
Que pertenece a la clase, no a instancias
90.
Sin modificador explícito, el acceso es...
a)
Solo a subclases
b)
Idéntico a private
c)
Global sin restricción
d)
De paquete (package-private)
91.
¿Cómo obtienes el tamaño de un arreglo 'a'?
a)
length(a)
b)
size(a)
c)
a.length
d)
a.size()
92.
La anotación @Override ayuda a...
a)
Verificar que realmente se está sobreescribiendo un método
b)
Hacer públicos los métodos privados
c)
Evitar crear constructores
d)
Generar equals automáticamente
93.
Comparar contenido de dos Strings s1 y s2:
a)
s1 == s2
b)
s1.compareTo(s2) == 0 por referencia
c)
equals(s1, s2) nativo
d)
s1.equals(s2)
94.
Ejemplo de excepción 'checked':
a)
ArrayIndexOutOfBoundsException
b)
IOException
c)
NullPointerException
d)
ArithmeticException
95.
Número aleatorio entero de 1 a 6 con Random r:
a)
(int)(Math.random()*6) + 0
b)
r.nextInt(6) + 1
c)
r.nextInt() % 6
d)
r.nextInt(5) + 1
96.
El nombre de la clase pública debe...
a)
Ser igual al paquete
b)
Iniciar siempre con mayúsculas y guiones
c)
Coincidir con el nombre del archivo .java
d)
Ser único en todo el classpath
97.
¿Qué palabra implementa una interfaz?
a)
extends
b)
implements
c)
interfaceOf
d)
include
98.
¿Dónde se reciben argumentos de línea de comandos?
a)
En una variable global
b)
En System.in siempre
c)
En main(String[] args)
d)
En args de cualquier método
99.
throws' en la firma de un método...
a)
Declara que el método puede lanzar ciertas excepciones
b)
Finaliza el método
c)
Lanza la excepción inmediatamente
d)
Registra la excepción en un log
Reset
