Je regardais ces deux implémentations du modèle Singleton :
Class Customer {
int x;
static int count = 0;
private Customer()
{
x = 1;
}
public static Customer GetCustomer()
{
if(count==0)
{
count++;
return new Customer();
}
else
{
return null;
}
}
}
Implémentation 1 dans laquelle le constructeur n'est pas appelé si la classe est déjà instanciée une fois. OU
Class Customer{
int x;
static int count = 0;
public Customer()
{
if(count == 0)
{
x = 1;
count++;
}
else
{
return;
}
}
Implémentation 2 dans laquelle le constructeur est appelé indépendamment du fait que la classe a déjà été instanciée une fois ou non. J'ai regardé un cours vidéo en ligne qui dit que l'implémentation 2 n'est pas préférable car elle alloue de la mémoire pour le constructeur bien que l'objet ne soit pas instancié pour la deuxième fois. Je sais que Java dispose d'un système de collecte automatique des déchets, mais je voulais juste savoir si ce que j'ai vu dans la vidéo était pertinent.