-
Una clase abstracta, al igual que una clase normal, nos va a permitir definir
atributos y funciones.
La diferencia es que una clase abstracta no va a tener implementación, es
decir, no voy a poder crear un objeto de esta clase.
Su sintaxis básica es abstract class NombreClase(constructor atributos){ }
- Esta clase cómo la vamos a utilizar, esta clase nos
va a permitir heredarla a otra clase para que pueda implementar los métodos que
esta va a definir y pueda sobre escribir los métodos abstractos.
Podemos definir dentro de una clase abstracta, métodos abstractos que van a
funcionar como una plantilla para la clase que va a implementar esta clase
abstracta.
-
En el siguiente ejemplo vamos como se construye una clase abstracta y
posteriormente como se hereda por una clase normal.
También vemos como la clase normal, ha de implementar todos los métodos que
sean abstractos de la clase abstracta de la que hereda.
Una vez que he creado en main un objeto que implemente la clase que hereda la
clase abstracta, también podré acceder a los métodos no abstractos, definidos
en ella.
Cómo implementamos estos métodos desde la clase abstracta, muy sencillo, sobre
escribiéndolos desde la clase que la hereda.
No hay comentarios:
Publicar un comentario
Gracias por vuestros aportes.