clone()在
java.lang.Object所有类的扩展类中定义,但它是
protected。这实际上是一个具体的方法实现,它对对象进行逐字段克隆,但前提是您已实现
Cloneable接口以表明允许这样做。
实际上,许多人都重写了该
clone()方法,以便他们可以使用它
public并允许从类外部进行克隆。
整个模式是非常不寻常的,不是您通常会复制的模式,我想不出JVM中有许多成对的标记接口和方法的其他示例。从 Java 5
开始,最好对标记使用注释。例如,
@XmlRootElement用于将类型标记为Jax-B可序列化(Java
5之后)与
Serializable用于指示类是二进制可序列化的接口(Java 5之前)的接口。



