Я видел ответ на quora (https://www.quora.com/Can-we-create-mulitple-instances-of-singleton-classes-in-Java-if-so-how-if-not-then-why), в котором предлагалось создать ConcurrentHashMap экземпляров Singleton, «привязанных к идентифицирующей строке», но я не уверен, как это будет работать. Вот моя попытка:
public class SingletonClass {
static ConcurrentHashMap<String, SingletonClass> list = new ConcurrentHashMap<String, SingletonClass>();
private static SingletonClass instance = null;
static String name;
public SingletonClass() {
this.name = "";
}
public SingletonClass(String name) {
this.name = name;
}
public SingletonClass getInstance(String key) {
SingletonClass result = list.get(key);
if(result == null) {
instance = new SingletonClass(name);
list.putIfAbsent(key, instance);
result = instance;
}
return result;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
И я понятия не имею, как действовать или как создать экземпляр этого и сохранить ключ, пару значений в списке, а затем снова получить значение в зависимости от указать c ключ? Любая помощь будет принята с благодарностью.