В настоящее время я разрабатываю объектно-ориентированную систему на языке Java. Мне необходимо назначить уникальный целочисленный идентификатор каждому объекту в приложении и иметь возможность сериализовать и десериализовать все содержимое приложения. Мне указали на шаблон проектирования Singleton как на средство хранения Java-эквивалента «глобальных переменных», но общие реализации в Java с использованием Class или Enum являются несериализуемыми или неизменяемыми соответственно. Как бы мне создать синглтон, который был бы одновременно изменяемым и сериализуемым?
Ниже приведен мой текущий Java-код для написанного мной класса Singleton, который не должен быть сериализуемым, поскольку idCountSingleton статический:
Код: Выделить всё
import java.io.Serializable;
public class idCountSingleton implements Serializable{
private static idCountSingleton INSTANCE;
private int count;
private idCountSingleton(int id){
idCountSingleton INSTANCE = new idCountSingleton(id);
count = id + 1;
}
public int getID(){
return this.count;
}
public idCountSingleton getInstance(){
return this.INSTANCE;
}
}
Источник: https://stackoverflow.com/questions/781 ... -singleton