Iniciar sesión

Clases abstractas e interfaces en Java

Definir contratos sin implementación completa

Unidad: Programación Orientada a Objetos Lección 5 de 6 Gratis
📐
Clases abstractas e interfaces
Una clase abstracta no se puede instanciar directamente (no puedes hacer new de ella); sirve como base que otras clases extienden, y puede tener métodos abstract (sin cuerpo, obligatorios de implementar).
abstract class Figura { abstract double area(); // sin cuerpo } class Circulo extends Figura { double radio; double area() { return Math.PI * radio * radio; } // obligatorio implementarlo }
Una interfaz es un contrato: define QUÉ métodos debe tener una clase, sin decir CÓMO. Una clase puede implementar varias interfaces (a diferencia de la herencia simple).
interface Volador { void volar(); } class Pajaro implements Volador { public void volar() { System.out.println("Vuela"); } }

Pon a prueba lo que aprendiste

Concepto

¿Se puede crear un objeto directamente de una clase abstracta con new?

  1. ANo, nunca
  2. BSí, siempre
  3. CSolo si es final
  4. DSolo si tiene un constructor vacío
Ver respuesta
A) No, nunca Una clase abstracta no se puede instanciar directamente, solo a través de sus subclases concretas.
Sintaxis

¿Qué palabra clave usa una clase para implementar una interfaz?

  1. Aextends
  2. Bimplementa
  3. Cimplements
  4. Dinterface
Ver respuesta
C) implements Implements se usa con interfaces; extends con clases (herencia).
Concepto

¿Cuántas interfaces puede implementar una misma clase?

  1. ANinguna si ya extiende de otra clase
  2. BVarias al mismo tiempo
  3. CDepende de la versión de Java
  4. DSolo una
Ver respuesta
B) Varias al mismo tiempo A diferencia de la herencia simple de clases, se pueden implementar varias interfaces.

🎯 Practica esta lección completa

Ejercicios de completar código, ordenar bloques y respuesta libre. Ganas XP y mantienes tu racha.

Practicar gratis, sin registrarte Entras como invitado directo a esta lección. Sin tarjeta.