Есть класс(Example) который реализует интерфейс Serializable
Есть file - он пустой
Есть такой код
ObjectInputStream inputStream = inputStream = new ObjectInputStream(new FileInputStream(file));
(Example) inputStream.readObject());
Так вот: если в классе Example я определяю только метод equals, то при чтении он выкидывает EOFExeption и я определяю что файл пуст, если в классе я реализовываю и equals, и hashCode то он мне выкидывает ошибку StreamCorruptedException. Файл в дальнейшем будет заполнен данными, но смысл в том, что с 2 методами он выкидывает непонятную мне ошибку, я ее не знаю как исправить.
На самом деле в вопросе не хватает минимально воспроизводимого примера.
Если посмотреть в документацию по исключениям:
public class EOFException
Signals that an end of file or end of stream has been reached unexpectedly during input.
EOFException
- сигнализирует о внезапно закончившемся потоке для чтения
public class StreamCorruptedException
Thrown when control information that was read from an object stream violates internal consistency checks.
StreamCorruptedException
- выбрасывается когда прочитанная информация не соответствует ожиданиям (вольный перевод)
Т.е. если читающий поток ожидает системную информацию и за ней данные об объекте, а получает что-то другое
Ждет:
системная информация -> данные объекта 1 -> данные объекта 2 ...
Получает:
системная информация -> данные объекта 1 -> системная информация...
На пустом файле у меня всегда выбрасывался EOFException в не зависимости от наличия hashCode
или equals
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть класс Test, потомок ThreadКак мне настроить log4j2 что бы для каждого потока Test создавался свой лог файл
Пытаюсь геокодировать адрес переменной adr в координаты с долготой и шириной и отобразить метку на картеЗапускаю приложение
Привет! Есть простой массив Object[] arr = new int[50] заполненный некими значениями, также есть другой массив Object[][][][][] fiveDArr, правда он 5-ти мерный, нужно...
Чем отличается List от ArrayListПогуглил, но толком ничего не нашел (как минимум, на русском языке)