【发布时间】:2012-02-17 06:04:45
【问题描述】:
这可能有点无意义的问题,但是在浏览各种JDK类的源代码时,我看到当一个类实现java.io.Serializable接口时,它通常用一个完全限定的名称来引用它,而不是使用导入,比如如:
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
这有什么具体原因吗?这与旧 JDK 1.0 中已弃用的类 sunw.io.Serializable 的存在有任何关系吗?
【问题讨论】:
-
我相信您对
sunw.io.Serializable的看法是正确的,作者想明确表示他们的意思是java.io.Serializable。例如Cloneable在 JDK 中没有同名的对应物,所以它没有意义。 -
询问该代码的作者。使用 Serializable 的完全限定名称(根据我的经验)是不正常的。
-
@Steve Kuo:你说我应该给乔什·布洛赫写一封电子邮件? :)
标签: java serializable