Dans getInstance () de java.util.Calendar, Ce n'est pas une méthode d'acquisition d'objets singleton.
Calendar calendar = Calendar.getInstance();
Créera une nouvelle instance.
Il n'y a donc rien de mal à le garder sur le terrain. L'intérieur n'est pas réécrit sans le savoir.
Cependant, c'est trop dégoûtant, alors peut-être que je devrais l'essayer comme ça.
public class CalendarFactory {
public static Calendar createInstance() {
// WARN:
//GetInstance ci-dessous()Crée une nouvelle instance.
return Calendar.getInstance();
}
}
...
Calendar calendar = CalendarFactory.createInstance();
Cela fait-il vraiment partie du SDK standard? C'est la liberté.
référence: https://stackoverflow.com/questions/6055112/why-can-i-have-only-one-instance-of-calendar-object?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa
Recommended Posts