Java Comment détruire instance du Singleton
J'ai un singleton qui est créé comme ça
private static class SingletonHolder {
public static Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return SingletonHolder.INSTANCE;
}
Je voudrais réinitialiser l'instance du singleton à un certain moment. (Je suis sûr qu'en ce moment il est sécuritaire de le réinitialiser l'instance du singleton). J'ai essayé d'enlever la finale, le prescripteur et le jeu de l'instance à null quand je veux le réinitialiser mais le problème est de savoir comment obtenir une autre instance (Il restera null)
Autre question: est-il sécuritaire de supprimer la dernière spécificateur de l'intérieur de la SingletonHolder.
Grâce
alors, qui va réinitialiser le singleton de l'état? la classe singleton ou externes, les gars?!
Dans ce cas (besoin d'une nouvelle instance de l'objet), je pense que vous n'avez pas besoin de singleton, mais une usine.
Votre classe actuelle n'est pas un singleton. Il a encore une
Avez-vous essayé d'ajouter un
Dans ce cas (besoin d'une nouvelle instance de l'objet), je pense que vous n'avez pas besoin de singleton, mais une usine.
Votre classe actuelle n'est pas un singleton. Il a encore une
public
constructeur.Avez-vous essayé d'ajouter un
reset
méthode?OriginalL'auteur user1603602 | 2013-10-06
Vous devez vous connecter pour publier un commentaire.
Si vous vraiment besoin de réinitialiser une instance du singleton (qui n'a pas fait beaucoup de sens en fait), vous pouvez l'envelopper tout son intérieure membres dans un objet privé, et réinitialiser via explicite
initialize()
etreset()
méthodes.De cette façon, vous pouvez conserver votre singleton istance, une sorte de "reset" de la fonctionnalité.
Dans ce cas, le singleton est toujours pas null. je veux dire, si vous appelez getInstance (), vous obtiendrez la même instance de nouveau ...
OriginalL'auteur Polentino
vous fournir un ensemble visible(niveau d'accès par défaut) méthode pour d'autres classes pour être en mesure de réinitialiser le singleton, quelque chose comme cela
OriginalL'auteur