Это может быть немного бессмысленный вопрос, но при просмотре источников различных классов JDK я увидел, что когда класс реализовал интерфейс java.io.Serializable
, он обычно ссылался на него с полным именем, не используя импорт, например:Почему Serializable объявлен с полным именем в классах JDK?
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
Есть ли какие-либо конкретные причины для этого? Имеет ли это какое-либо отношение к существованию устаревшего класса sunw.io.Serializable
из старого JDK 1.0?
Я верю, что вы правы с «sunw.io.Serializable», авторы хотели дать понять, что они означают «java.io.Serializable». Например, «Cloneable» не имеет одинакового имени в JDK, поэтому было бы бессмысленно. –
Задать вопрос автору этого кода. Использование полного имени для Serializable (по моему опыту) - это не нормальная вещь. –
@Steve Kuo: Вы говорите, что я должен написать электронное письмо Джошу Блоху? :) – Natix