¡Sí! comprendamos primero, qué es realmente una clase abstracta,
Una clase abstracta es una clase que se declara abstracta; puede incluir o no métodos abstractos. Las clases abstractas no pueden instanciarse, pero pueden subclasificarse. fuente: sitio de Oracle
Un constructor en Java en realidad no “construye” el objeto, se usa para inicializar campos. Imagine que su clase abstracta tiene campos x e y, y que siempre quiere que se inicialicen de cierta manera, sin importar qué La subclase concreta finalmente se crea. Entonces creas un constructor e inicializas estos campos.
- ¿Google vencerá a la muerte?
- ¿Sería justo decir que la estructura de las TIC de China se ha beneficiado del Gran Cortafuegos chino?
- ¿Qué cubre una lista de verificación para una política de compilación estándar?
- ¿Qué es la pantalla retina?
- ¿Cómo fue la tecnología en la década de 1970?
Ahora, si tiene dos subclases diferentes de su clase abstracta, cuando las instancia, se llamarán sus constructores, y luego se llamará al constructor principal y se inicializarán los campos.
Ex.
Clase abstracta Persona {
nombre de cadena privada;
Persona pública (nombre de cadena) {
this.name = nombre;
}
}
clase SoccerPlayer extiende Persona {
public SoccerPlayer (nombre de cadena) {
super (nombre);
}
}
Persona p = nuevo SoccerPlayer (“Ronaldo”);