Oi pessoal, estou estudando para SCJP 1.4 e fazendo simulado do DAN encontrei a seguinte questão:[code]Which of the following statements are true?
a. The compiler will create a default constructor if no other constructor is declared.
b. The default constructor takes no arguments.
c. If a class A has a direct superclass, then the default constructor of class A invokes the no-argument constructor of the superclass.
d. The default constructor declares Exception in the throws clause.
e. The default constructor is always given the private access modifier.
f. The default constructor is always given the public modifier.
g. The default constructor is always given default package access.
[/code]
Como resposta estão marcadas como corretas as opções A,B e C.
Mas eu havia marcado a opção G também, o construtor default não tem acesso padrão?
mas então a letra f estaria certa…
acho que ele cria um construtor default de acordo com o modificador da classe… eu acho.
sera?
<editado>
agora acho que me esclareceu…
vlw!!!
</editado>
[]'s
pois é, eu sempre soube que o construtor padrão é como o Daniel postou.
mas esses dias vi, acho que em um simulado, algo parecido como o Pcalcado postou.
então fica a duvida, o Cconstrutor padrão é Public ou depende do modificador da classe???
Concordamos então que as opções onde dizem que os construtores SEMPRE serão de um determinado tipo de acesso estão incorretas, pois irá depender do acesso da classe.
[quote=pcalcado][quote=Java Language Specification Second Edition] if the class is declared private, then the default constructor is implicitly given the access modifier private (§6.6);
[/quote]