看来没有分大家都不愿意回答啊。 我来说说吧。确实Cloneable这个接口里面什么都没有。 但你却必需实现它。 像Cloneable这样的接口我们叫它“标识接口”,虽然它没有规定什么方法,但只要实现这个接口,就意味着你是在告诉别人“我的这个类可以clone”。当然,具体怎么clone还得你自己来实现。你实现了自己的类的clone也得实现这个接口告诉别人。像这样的标识接口常见的还有"可序列化(Serializable)"

解决方案 »

  1.   

    确实什么都没有
    但是你implement Cloneable
    之后,你的类就可以向上转型为Cloneable接口的实例了,真正的意义在此
      

  2.   

    楼上,把你的类向上转型到Cloneable那可不是真正的意义啊。你转到Cloneable干什么?  那里一个方法也没有。 向上转了以后你什么也做不了了啊。 Cloneable 的真正意义就是告诉用户这个类已经实现了Cloneable,是可以clone的。
      

  3.   

    java里的Cloneable和Serializable都是由jvm负责工作的
    我们只需要声明implement了这些接口
    剩下的工作自然会由jvm负责的(但关键代码还是要有的)
    如果不声明,jvm就认为这些类不符合相关的要求,也就不会为你做clone和串行化工作