Вы должны переопределить toString()
для преобразования экземпляров вашего класса в строку.Что касается воссоздания экземпляров на основе их строкового представления, вы можете определить для этого статический фабричный метод.
public class Employee {
...
@Override
public String toString() {
...
}
public static Employee fromString(String str) {
...
}
}
Эти методы используются следующим образом:
Чтобы получить строковое представление экземпляра в строку:
Employee john = ...
String johnString = john.toString();
Обратите внимание, что ваш метод toString()
также будет вызываться неявно, когда необходимо получить строковое представление одного из экземпляров.
Чтобы воссоздать экземпляр из строки:
Employee john = Employee.fromString(johnString);
Если вам часто нужно хранить экземпляры класса в файле и читать их обратно, вы можете также рассмотреть возможность сериализации.См. Документацию для Сериализуемый интерфейс, а также ObjectInputStream и ObjectOutputStream .Вы также можете ознакомиться с предостережениями, связанными с сериализацией, прочитав последнюю главу («Сериализация») в Effective Java, второе издание .Наиболее важно знать, что сериализованная форма вашего класса становится частью вашего публичного API.