我知道接口 Serializable 的实现使得一个对象被序列化,但是当接口只是一个类的定义时,如何使用它们的方法:
interface Serializable {
public one();
public two();
}
public class Dog implements Serializable {
private static final long serialVersionUID = 1L;
...
}
(类Dog没有实现Serializable的任何方法)
我根本不明白,你能解释一下吗?
答案 0 :(得分:2)
原因是因为界面没有方法......
为什么不呢?
因为界面被定义为'标记界面'。
那是什么??:
该接口仅用于TAG对象,以便JVM可以在运行时获取有关它们的更多信息
如果有机会,请查看Joshua Bloch的 Effective java :
引用:
标记接口是一个不包含任何方法的接口 声明,但只是指定(或“标记”)一个类 将接口实现为具有某些属性。
例如, 考虑Serializable接口(第11章)。通过实施这一点 接口,一个类表示其实例可以写入 ObjectOutputStream(或“序列化”)....