À titre d'exemple:En java, comment faire une classe avec un constructeur privé dont la superclasse a aussi un constructeur privé?
public class Foo {
private Foo() {}
}
public class Bar extends Foo {
private Bar() {}
static public doSomething() {
}
}
C'est une erreur de compilation là. Une classe doit, au moins, appeler implicitement le constructeur par défaut de sa superclasse, qui dans ce cas n'est pas visible dans Foo.
Puis-je appeler Constructeur de l'objet à partir de Barre à la place?
Existe-t-il une raison pour que Foo() {} soit privé au lieu d'être protégé? –
@svelil: Disons que c'est dans une bibliothèque tierce, ou en dehors de mon contrôle, et je veux la sous-classer. –