Construtor privado

3 respostas
L

Senhores,
Se eu declaro um Construtor de uma classe como privado, isso impobilita a criação de uma classe que herde dessa primeira?
Att.

3 Respostas

F

Para Estender uma classe o modificador de acesso do construtor nao importa !!!

Mas, para instanciar voce só pode instanciar de dentro da mesma classe

(Melhor não usar o modificador private no construtor)
:twisted:

B

“lelousan”:
Senhores,
Se eu declaro um Construtor de uma classe como privado, isso impobilita a criação de uma classe que herde dessa primeira?
Att.

Ola

Por definição da linguagem, quando vc extende uma classe, a classe que estendeu precisa “construir” a classe estendida antes de se construir, se os contrutores da classe que foi estendida for private, a classe que estendeu não consiguirá construir-la, assim gerando o erro, em tempo de compilação.

Para que isto não ocorra, é recomendado o uso do modificador protected, se houver alguma restrição, de modo que só classes que estendam a classe possa contrui-la.

E

Só adicionando um detalhe na resposta do BrunoCarlo, com o modificador protected terá acesso ao construtor tanto as classes que herdam dela e também as que estão no mesmo pacote.

Criado 11 de setembro de 2006
Ultima resposta 15 de set. de 2006
Respostas 3
Participantes 4