Это может быть глупый вопрос, но он бросает меня в тупик.
Я реализовал одноэлементный класс (я знаю, что он злой), используя перечисление в Java следующим образом
public enum Edit {
INSTANCE;
private TreeSet<String> list1 = new TreeSet<String>();
public void createList(Scanner input) {
while (input.hasNext()) {
list1.add(input.next());
}
Мой вопрос заключается в том, что происходит с TreeSet, когда вы используете метод createList вболее одного места в приложении?
Например, скажем, первый раз, когда Edit.INSTANCE.createList () вызывается в приложении, 10 строк добавляются в список list1, теперь во второй раз он вызывается, 5 строк добавляются в список1 ....будут ли эти новые 5 строк добавлены в TreeSet с предыдущими 10 строками или они будут добавлены в совершенно другой (новый) TreeSet?
Я знаю, что цель одноэлементного класса - убедиться, что естьодин и только один глобальный экземпляр класса, но верно ли это для переменных члена класса?В приведенном выше примере есть только одна копия list1 или каждый раз, когда вызывается метод createList (), создается новый TreeSet?