2013-10-11 2 views
-1

У меня есть простой сервлет.Должен ли мой сервлет выполнять Serializable?

public class MyServlet extends HttpServlet 
{ 
... 
} 

Нужно ли мне implement Serializable?

public class MyServlet extends HttpServlet implements Serializable 
{ 
... 
} 

HttpServlet уже implements Serializable. Итак, это избыточность здесь?

Каковы последствия, если оно реализовано и если оно не реализовано?

+0

По той же причине, почему вы делаете свой bean-инструмент Serializable .. – user2488578

+2

Сдвиг не нужен, так как user2488578 явно думал об этом. У него или нее нет опыта, чтобы знать, почему бобы отличаются от сервлетов и как работает наследование. Нехорошо быть новичком. – Vidya

+0

@Rupesh Я хочу, чтобы ваши комментарии были ниже. Или ты не был новичком? –

ответ

1

Нет, вам не нужно это делать. Как вы говорите, это избыточно, потому что HttpServlet уже реализует Serializable.

Не забудьте указать поле static final long serialVersionUID в своем классе MyServlet.

0

Serializable - marker interface. это not have any method of it's own. это просто hint jvm, что объект дочерних классов будет сериализуемым или записываемым для потоков, таких как файл или сеть.

Если класс уже реализует его, не нужно делать это снова.

1

Всякий раз, когда вы расширяете класс, вы распространяете все на нем. Так как HttpServlet реализует Serializable, Serializable подходит для езды, когда вы расширяете HttpServlet. Не нужно делать это снова сами.

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