我想问你如何将firstClass对象复制到secondClass对象?
这可以通过使用clone()来解决吗?
情况如下:
我有一个类f.x.的Firstclass。我需要将firstClass对象克隆到secondClass对象(并且这些克隆对象必须存储到数组中)
由于
编辑:
抱歉收到一些信息。但我的任务看起来像这样:编写一个Garage类,其对象可以容纳一定数量的Vehicle对象 阵列。使Garage成为Cloneable类型,并为其编写适当的克隆方法。写一个Garage.main 测试它的方法。
答案 0 :(得分:3)
按照惯例,Object.clone()方法及其覆盖应始终返回原始类型的对象。
x.clone()。getClass()== x.getClass()
因此,如果正确实现和使用clone()
,则应该无法创建不同类型的对象。
答案 1 :(得分:3)
这不是克隆。如果你有两个不相关的类,你可以做的最好是为SecondClass编写一个构造函数,它将FirstClass对象作为参数并将所有值写入适当的字段:
public SecondClass (FirstClass source){
this.valueA = source.getValueA();
this.valueB = source.getBValue();
this.valueC = source.getProperCValue();
...
}
答案 2 :(得分:1)
这样的事情?!
class Foo{
private String bar;
public Object clone(){
Foo f=new Foo();
f.setBar(this.bar);
//filling and copy the f attributes
guys.add(f);
}
///
private final static List<Foo> guys=new ArrayList<>();
///
}