¿Puede la clase abstracta de Java tener constructor?
¿Puede la clase abstracta de Java tener constructor?

Video: ¿Puede la clase abstracta de Java tener constructor?

Video: ¿Puede la clase abstracta de Java tener constructor?
Video: 76. Programación en Java || POO || Clases y métodos abstractos 2024, Noviembre
Anonim

Si, un la clase abstracta puede tener a constructor en Java . usted pueden o bien proporcionar explícitamente un constructor para clase abstracta o si no lo hace, el compilador voluntad agregar predeterminado constructor de ningún argumento en clase abstracta . Esto es cierto para todos clases y también se aplica a un clase abstracta.

En consecuencia, ¿puede un constructor ser abstracto en Java?

usted pueden no tengo un constructor abstracto , como abstracto significa que debe proporcionar la implementación para eso en algún momento en su subclase. Pero no puedes anular constructor . Allí voluntad no tiene sentido tener un constructor abstracto : Usted voluntad siempre llama al constructor de la clase secundaria y no de la clase base.

De manera similar, ¿cómo se llama a un constructor de clases abstracto? Puede definir un constructor en un clase abstracta , pero no puedes construir ese objeto. Sin embargo, los sub- clases puede (y debe) llama uno de los constructores definido en el abstracto padre clase . No puedes llama un constructor de clases abstractas con un clase expresión de creación de instancia, es decir

Asimismo, la gente pregunta, ¿por qué una clase abstracta tiene un constructor?

A constructor en Java en realidad no "construye" el objeto, se usa para inicializar campos. Imagina que tu la clase abstracta tiene campos xey, y que siempre desea que se inicialicen de cierta manera, sin importar qué subclase concreta real se cree finalmente.

¿Puede la clase abstracta tener objetos en Java?

Porque es abstracto y un objeto es de hormigón. No, los diseñadores no proporcionaron una forma. Porque un clase abstracta es un incompleto clase (incompleto en el sentido que contiene abstracto métodos sin cuerpo y salida) no podemos crear una instancia o objeto ; de la misma manera que dices para una interfaz.

Recomendado: