我有一个非常简单的问题(我猜!) 如何在Cloneable接口中保护clone方法,而接口只能声明公共方法?
答案 0 :(得分:2)
Cloneable接口实际上没有定义任何方法。它只是一个标记界面,类似于Serializable。
预计任何实际可克隆的对象都将实现此接口,并从Object覆盖clone()方法(至少使其成为公共访问)。
答案 1 :(得分:2)
Cloneable
界面未定义任何方法
protected Object clone()
是java.lang.Object
中的一种方法,如果该类未实现Cloneable
,则会抛出异常。
答案 2 :(得分:2)
Cloneable
未声明任何方法:)
您正在考虑Object
,它确实声明了clone()
方法。
答案 3 :(得分:2)
Cloneable
是marker interface,它没有任何方法。
clone方法在Object类中,因为Java中的所有对象都隐式地扩展了Object,因此即使它受到保护也是可用的。
如果一个类没有实现Cloneable
并且它的克隆方法被调用,它将抛出CloneNotSupportedException