Ответы на вопросы по ревью 4. Java io. Ключевым понятием здесь является понятие потока
Скачать 1.93 Mb.
|
private void writeObject(ObjectOutputStream oos) throws IOException { throw new NotSerializableException("Serialization is not supported on this object!"); } private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException { throw new NotSerializableException("Serialization is not supported on this object!"); } Однако это является нарушением принципа замены Лискова. И Методы writeReplace и readResolve могут быть использованы для достижения одноэлементного поведения. Эти методы используются для того, чтобы объект мог предоставить альтернативное представление для самого себя в потоке объектов. Проще говоря, readResolve можно использовать для изменения данных, которые десериализуются с помощью метода readObject, а writeReplace можно использовать для изменения данных, которые сериализуются с помощью writeObject. Java Сериализацию также можно использовать для глубокого клонирования объекта . Клонирование Java – самая дискуссионная тема в сообществе Java, и у нее, безусловно, есть свои недостатки, но она по-прежнему остается самым популярным и простым способом создания копии объекта до тех пор, пока этот объект не будет полностью заполнен обязательными условиями клонирования Java. Я подробно рассмотрел клонирование в 3 статьях длиной Серия Клонирования Java , которая включает такие статьи, как Клонирование Java И Типы Клонирования (Мелкое И Глубокое) Подробно С примером , Клонирование Java – Конструктор Копирования По сравнению с клонированием , Клонирование Java – Даже конструкторов копирования Недостаточно , продолжайте и прочитайте их, если хотите узнать больше о клонировании. |