Quelqu'un m'a dit:
class MyClass {
private static MyClass myClass = new MyClass();
private static final Object obj = new Object();
public MyClass() {
System.out.println(obj); // will print null once
}
}
Je me demande, n'est-ce pas un bug? Pourquoi les objets statiques ne sont pas initialisées avant l'exécution du constructeur?
--mise à jour
J'avais juste copié ce programme d'exemple et sans attention, je pensais que nous parlions de 2 champs d'Objet, maintenant que j'ai vu que le premier est un MyClass champ.. :/
Acceptée-réponse marque va à Pyrolistical par le dévouement à expliquer.
Aussi, merci Kevin Brock.
Je remercie tous ceux qui ont soutenu, je remercie l'académie, les amis,.. XD