A classe abstrata Java pode ter um construtor?
A classe abstrata Java pode ter um construtor?

Vídeo: A classe abstrata Java pode ter um construtor?

Vídeo: A classe abstrata Java pode ter um construtor?
Vídeo: Curso de Java 41: Orientação a Objetos: Herança: classes abstratas 2024, Novembro
Anonim

Sim um classe abstrata pode ter uma construtor no Java . Vocês posso fornecer explicitamente um construtor para classe abstrata ou se não, o compilador vai adicionar padrão construtor de nenhum argumento em classe abstrata . Isso é verdade para todos Aulas e também se aplica a um classe abstrata.

Conseqüentemente, um construtor pode ser abstrato em Java?

Vocês posso não tenho um construtor abstrato , Como resumo significa que você precisa fornecer a implementação para isso em algum ponto do tempo em sua subclasse. Mas você não pode substituir construtor . Lá vai não faz sentido ter um construtor abstrato : Você vai sempre ligue para o construtor da classe filha e não da classe base.

Da mesma forma, como você chama um construtor de classe abstrata? Você pode definir um construtor em um classe abstrata , mas você não pode construir esse objeto. No entanto, concreto sub- Aulas pode (e deve) ligar um dos construtores definido no resumo pai classe . Você não pode ligar um construtor de classe abstrata com um classe expressão de criação de instância, ou seja, Da mesma forma, as pessoas perguntam: por que uma classe abstrata tem um construtor?

UMA construtor em Java, na verdade, não "constrói" o objeto, ele é usado para inicializar campos. Imagine que o seu classe abstrata tem campos xey, e que você sempre deseja que eles sejam inicializados de uma determinada maneira, não importa qual subclasse concreta seja criada.

A classe abstrata pode ter objetos em Java?

Porque é resumo e um objeto é concreto. Não, os designers não forneceram um meio. Porque um classe abstrata é um incompleto classe (incompleto no sentido em que contém resumo métodos sem corpo e saída), não podemos criar uma instância ou objeto ; da mesma forma que você diz para uma interface.

Recomendado: