【发布时间】:2021-07-31 13:46:07
【问题描述】:
从object类中附上clone方法实现的sn-p,虽然object类没有实现cloneable接口,但是怎么允许使用呢? 另一个:为什么克隆方法不能留在可克隆接口而不是对象类中? 标记界面的实时应用是普通界面无法提供的意义和重要性。
[从对象类克隆方法] [1]:https://i.stack.imgur.com/QH4Yi.png
【问题讨论】:
从object类中附上clone方法实现的sn-p,虽然object类没有实现cloneable接口,但是怎么允许使用呢? 另一个:为什么克隆方法不能留在可克隆接口而不是对象类中? 标记界面的实时应用是普通界面无法提供的意义和重要性。
[从对象类克隆方法] [1]:https://i.stack.imgur.com/QH4Yi.png
【问题讨论】:
虽然对象类没有实现可克隆接口,但它怎么允许使用呢?
在网上搜索演员表操作员的工作。它是可克隆的。
为什么克隆方法不能停留在可克隆接口而不是对象类中?
因为接口不能声明实现(从 java 1.8 开始,它们可以通过 default 机制,但 Object.clone() 比它早了 20 多年左右)。
不要将 Cloneable 的工作方式视为良好 API 设计的示例。不是,但是在设计 Cloneable 的东西时,java 的开发人员并没有更好的了解。
【讨论】:
java.lang.Object 没有实现 Cloneable。子类 may, 这就是案例 may 起作用的原因,这就是存在 instanceof 测试的原因。如果你写的是正确的,那就没有必要了。
Object 没有实现Cloneable,这与你第一句话中所说的相反。