Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Clases abstractas e interfaces

Total questions: 10

Worksheet time: 5mins

Name
Class
Date
1.

¿Cuál de las siguientes afirmaciones es correcta respecto a una clase abstracta en Java?

a)

No puede tener atributos.

b)

No puede tener métodos implementados.

c)

No se puede instanciar directamente.

d)

Solo puede contener métodos estáticos.

2.

En el siguiente código, ¿qué tipo de relación existe entre Auto y Vehiculo? class Auto extends Vehiculo { ... }

a)

Asociación

b)

Composición

c)

Herencia

d)

Implementación

3.

¿Cuál es una diferencia clave entre una clase abstracta y una interfaz en Java?

a)

Las interfaces pueden contener constructores.

b)

Las clases abstractas no pueden heredar.

c)

Las interfaces solo pueden contener constantes.

d)

Una clase puede implementar múltiples interfaces, pero solo extender una clase abstracta.

4.

¿Qué sucede si intentamos instanciar directamente una clase abstracta en Java?

a)

Se crea un objeto genérico sin atributos.

b)

El programa lanza una excepción en tiempo de ejecución.

c)

No compila; se genera un error en tiempo de compilación.

d)

Se inicializa con valores por defecto.

5.

¿Cuál de estas afirmaciones sobre interfaces en Java ES CORRECTA?

a)

Solo se pueden implementar en clases abstractas.

b)

Pueden contener métodos implementados si son default o static.

c)

Deben tener al menos un método abstracto.

d)

No pueden ser utilizadas en estructuras de control.

6.

¿Qué ventaja proporciona usar polimorfismo a través de interfaces?

a)

Mejora el rendimiento del sistema.

b)

Aumenta la rigidez del diseño del software.

c)

Permite que diferentes clases compartan comportamiento sin relación jerárquica.

d)

Facilita la sobrecarga de constructores.

7.

En el siguiente código, ¿qué representa la clase Notificacion?

public abstract class Notificacion {

String mensaje;

abstract void enviar();

}

a)

Una clase concreta que implementa una interfaz.

b)

Un ejemplo de clase sin herencia.

c)

Una plantilla que obliga a las subclases a definir un comportamiento.

d)

Una clase que puede ejecutarse directamente.

8.

¿Qué es el polimorfismo en el contexto de la programación orientada a objetos?

a)

La capacidad de una clase de heredar atributos de varias clases.

b)

La capacidad de los objetos de diferentes clases de responder al mismo mensaje de forma distinta.

c)

La posibilidad de definir múltiples clases con el mismo nombre.

d)

Un error común al sobrecargar constructores.

9.

¿Cuál es una ventaja clave del uso de interfaces en Java?

a)

A) Permiten definir atributos protegidos.

b)

B) Permiten crear múltiples constructores.

c)

C) Permiten que una clase implemente múltiples comportamientos sin herencia múltiple.

d)

D) Requieren menos memoria al compilar.

10.

¿Por qué es útil definir una clase como abstracta en lugar de concreta?

a)

A) Para evitar que tenga constructores.

b)

B) Para obligar a las subclases a sobrescribir ciertos métodos.

c)

C) Para que no tenga atributos.

d)

D) Para que no pueda usar herencia.