Встречается на собеседованиях • сегодня

Почему Serializable редко используют

Serializable — это маркерный интерфейс, который не требует реализации методов, но накладывает ограничения:

  1. Производительность — сериализация через ObjectOutputStream медленная и создает много временных объектов.
  2. Хрупкость — изменение класса (например, добавление поля) может сломать десериализацию.
  3. Безопасность — уязвимости при десериализации недоверенных данных (например, SerializationDos).
  4. Альтернативы — JSON (Gson, Jackson), Protobuf, Avro эффективнее и гибче.

Пример проблемы:

java
class User implements Serializable {
    private String name;  // Добавили поле после сериализации? InvalidClassException!
}

Используйте Serializable только для legacy-кода или когда нет выбора (например, RMI).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы