Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Duda] Clase abstracta, hablemos de uno de sus beneficios

Buenas, acabo de responder la encuesta y me surgió una duda con respecto a la respuesta (que es correcta) "Usamos métodos abstractos cuando queremos "forzar" a un hijo concreto (clase concreta) a implementar un método." y a su comentario "Correcto. Ese es el significado de los métodos abstractos, garantizar que el hijo implemente un comportamiento."

La duda es, cuando queremos forzar a una clase hija a implementar metodos, ¿no se hace a traves de un constructor definido por nosotros mismos?

1 respuesta

Hola Anderson, espero que estés muy bien.

¡Es una buena pregunta! =] Pero son dos conceptos y propósitos diferentes.

Un constructor se utiliza para crear una instancia de un objeto y establecer sus propiedades iniciales, pero no se utiliza para forzar a una clase hija a implementar un método.

Los métodos abstractos, por otro lado, son utilizados precisamente para esto: garantizar que una clase hija implemente un comportamiento específico. Al definir un método abstracto en una clase padre, se está especificando que todas las clases hijas deben implementar ese método, y si una clase hija no lo implementa, se producirá un error en tiempo de compilación.

En resumén,

  • Los métodos abstractos "obligan" a las clases hijas a implementar un comportamiento específico;
  • El constructor se utiliza para crear una instancia de un objeto y establecer sus propiedades iniciales;

Espero haberte quedado claro, cualquier duda estaremos aquí para ayudarte =)

¡Un saludo!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios