Bonjour à tous,

J'étudie le code du design pattern singleton, dont voici une implémentation (trouvée dans les tutos de developpez.net) et j'ai une question à ce propos.

code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class LazySingleton
{
    private static final LazySingleton instance = new LazySingleton();
 
    private LazySingleton()
    {
        System.out.println("Construction du Singleton au premier appel");
    }
 
    public static final LazySingleton getInstance() 
    {
        return instance;
    }
 
    @Override
    public String toString()
    {
       return String.format("Je suis le LazySingleton : %s", super.toString());
    }
}
A la première ligne, comment est-ce possible de créer l'instance de type "LazySingleton" alors que la classe dont elle dépend est en cours de définition ???

Il y a un concept que je ne dois pas saisir, mais lequel ?

En vous remerciant.