Externalizable Person

  • 12
  • Недоступна
Давайте придадим материальную форму (именно так можно перевести слово Externilize) человеку. У нас снова проблема: возникла какая-то ошибка. Исправьте её, добейтесь, чтобы класс Person сериализовывавался с помощью интерфейса Externalizable. Сигнатуры методов менять нельзя.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (194)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Роман Кончалов
Уровень 24, Россия
Expert
30 сентября, 13:57
Попробуйте кто-нибудь в readExtenal оставить in.readLine(), а во writeExternal добавить такое:
out.writeChars(firstName);
out.writeChar('\n');
и по-другому можно для фамилии для эксперимента:
out.writeChars(lastName);
out.writeChars("\n");
Anonymous #2749315 Frontend Developer
26 сентября, 23:03
Жесть!🥴 ХитрО! Называется "почувствуйте на своей шкуре, что значит работать с чужим 💩-кодом" 🤣
Yarik Таксист в Яндекс.Такси
10 сентября, 12:40
Почему writeObject ? Если нужно просто записать имя ? Только потому что у любого имени есть родители и дети ?
Edil Kalmamatov
Уровень 35
6 сентября, 19:11
Объясните почему в одних задачах для параметров типа int мы используем writeInt() и readInt(), а в этой задаче writeObject(0 (int)readObject?
Виноградина
Уровень 41, Berkeley, United States
17 сентября, 02:57
readInt и writeInt я оставил, хотя все осталльное через Object все прошло
aleksdenni
Уровень 37, Полтава, Украина
31 августа, 17:01
Записывать и читать только как обьекты . Ну и порядок , как все говорят , должен быть))
Максим Глотов
Уровень 35, Новосибирск
21 августа, 19:23
Главное - это порядок! И никаких символов, никаких чтений строк!!! Строка - это объект!
Дмитрий Б.
Уровень 29, Благовещенск, Россия
18 августа, 06:21
Порядок сохранения и порядок загрузки должен совпадать. За подсказку 4ого пункта валидатора "Сервер не может корректно протестировать присланное решение. Убедись в наличии всех необходимых классов. Проверь, что в решении нет бесконечных циклов.", составителя оного надо сжечь!
Андрей Власов Software Developer в SoftServe
17 мая, 15:43
Не забывайте про порядок полей, которые (-де)сереализуем, в методах readExternal/writeExternal - он должен быть ОДИНАКОВЫЙ
Никита
Уровень 22, Москва
24 июля, 17:17
Если бы не ты, то ещё чуть-чуть и начал бы волосы на голове рвать)
Маргарита Backend Developer в Сбер
25 апреля, 07:28
у меня возник вопрос. если некоторые поля, которых нет в конструкторе, ( например, mother) на момент сериализации не инициализированы, что будет? будет ли неявно осуществляться проверка на null? и как потом десериализовать то, что было null?
Anonymous #2631266
Уровень 41, Одесса
11 мая, 14:36
Можно открыть код OutputStream. Там есть методы для записи null private void writeNull() throws IOException { bout.writeByte(TC_NULL); } И для чтения тоже.
Maks Panteleev
Уровень 41, Москва, Россия
18 апреля, 07:32
out.writeObject(age);
мм правильное решение такое правильное) такой код даже не скомпилируется)
aleksdenni
Уровень 37, Полтава, Украина
31 августа, 17:02
Почему?