克隆扩展其他对象的对象(JAVA)

时间:2018-03-27 18:42:10

标签: java object minecraft bukkit

我正在尝试使克隆成为扩展另一个对象的对象。这里有一些背景知识。

我正在制作一个游戏系统,每个游戏都是它自己的对象,它扩展了另一个名为“竞技场的对象/类。例如,夺旗标志扩展了竞技场。竞技场有一堆变量需要对当前对象是唯一的我有一个充满了这些游戏的散列图,并且在需要时,需要克隆来自散列图的特定游戏。但是,当我使用Java clone()方法时,它会复制扩展Arena的对象,但它不会复制课程竞技场。如果这是有道理的。所以基本上如果我尝试做两个不同的游戏,(例如:夺旗和彩弹射击),他们都从竞技场课上分享相同的东西。(竞技场不是静态的)那不是什么我需要。有没有办法复制对象及其扩展的对象?

1 个答案:

答案 0 :(得分:0)

好像你某处没有叫super.clone()

注意遵循并理解 clone 方法中列出的所有说明:https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html#clone()

  • 您的类实现 Cloneable
  • clone 方法中,始终以super.clone()开头并使用该结果。你可能需要把它投到你的班级。
  • 更改需要唯一的值。克隆所有应该独立的引用(具有非基本类型的字段)(所有这些都是有疑问的......)。