public class Classe {
public Classe() {
}
}
Classes e construtores public
7 Respostas
Não…
A classe pode ser visível publicamente, mas o construtor pode ser visível internamente por exemplo (private).
Isso acontece sempre que você aplica o pattern Singleton por exemplo…
A classe pode possuir métodos estáticos que poderão ser executadas sem uma instância da classe, por isso não é redudante você definir o acesso do construtor como public ou outro nível.
Abraços
Se o construtor não faz nada, é redundante pois vc tera o construtor Default.
A palavra redundante até é forte demais nesse caso.
Não…A classe pode ser visível publicamente, mas o construtor pode ser visível internamente por exemplo (private).
Isso acontece sempre que você aplica o pattern Singleton por exemplo…
A classe pode possuir métodos estáticos que poderão ser executadas sem uma instância da classe, por isso não é redudante você definir o acesso do construtor como public ou outro nível.
Abraços
Correto, mas eu estou me referindo a um construtor explicitamente público em uma classe explicitamente pública.
Ou seja, minha dúvida é: se eu declarei minha classe como public, e deixei o construtor sem nenhum especificador de acesso, qual o nível de acesso do meu construtor? default ou public?
Abraços
Se o construtor não faz nada, é redundante pois vc tera o construtor Default.A palavra redundante até é forte demais nesse caso.
Então no exemplo abaixo:
public class Classe {
Teste() {
// Faz algo
}
}O construtor é default?
Sim é default!
Se o construtor não faz nada, é redundante pois vc tera o construtor Default.A palavra redundante até é forte demais nesse caso.
Então no exemplo abaixo:
public class Classe { Teste() { // Faz algo } }O construtor é default?
Essa sua pergunta tem pegadinha. O construtor não é default ( construtor default é aquele que não se escreve)
O modificador de acesso do construtor é que é default. 
A classe pode ser publica, mas isso não significa que o publico possa criar objetos dela.
o public junto de class significa que o publico pode usar a classe (i.e. importar a classe)
o publico junto do construtor significa que o publico pode criar objetos da classe.
Essa sua pergunta tem pegadinha. O construtor não é default ( construtor default é aquele que não se escreve)
O modificador de acesso do construtor é que é default.![]()
A classe pode ser publica, mas isso não significa que o publico possa criar objetos dela.
o public junto de class significa que o publico pode usar a classe (i.e. importar a classe)
o publico junto do construtor significa que o publico pode criar objetos da classe.
Perfeito. Obrigado a todos.