2014-02-04 6 views
0

Я продолжаю читать о сериализации. Я понимаю, как сериализовать и десериализовать пользовательские объекты. Но я не могу понять, почему многие классы в JAVA API реализуют Serialize по умолчанию.Java Serialization - класс оболочки

+2

Почему они не должны? Несомненно, для этих классов целесообразно реализовать «Serializable», а не писать всю логику вручную каждый раз, когда вы хотите сериализовать объект? Он не * заставляет вас сериализовать их, это просто упрощает, если вам нужно. – berry120

+0

«Столько» не имеет смысла. * Какие классы JDK реализуют Serializable, которые не должны, по вашему мнению? – EJP

ответ

2

Потому что вы можете только сериализовать объекты, которые сериализации. Поэтому, если у вас есть поле типа без сериализации, это поле не будет сериализовано.

+0

Вы хотите сказать класс, имеющий отношения HAS-A со сценарием в стиле String? Ex Класс Emp, реализующий Serializable, имеющий поле EmpName как String. Когда Emp Serialized, EmpName будет сериализован только потому, что String реализует Serializable – kushi

+1

да! если тип атрибута не реализует сериализуемое сериализуемое значение, он не может быть сериализован –

+0

В этом случае класс Object может реализовать Serializable, чтобы все объекты как в API, так и в пользовательских классах автоматически соответствовали критериям Serialization ryt ?? – kushi

2

Поскольку эти классы предназначены для хранения в некотором постоянном хранилище или передаются по сети в виде потока байтов.

Смежные вопросы