У меня есть класс Calle
с String nombre;
и int addr;
. Но метод clone
, который я сделал, дает мне неправильные значения.Ищите подходящий способ клонирования
public class Calle{
String nombre;
int addr;
public Object clone(){
return this;
}
}
Calle c1 = new Calle("a",1);
Calle c2 = c1.clone();
c2.setAddr(3);
System.out.println(c1.addr); // value wrong
Почему значение неверно?
b/c вы фактически не клонируете. вам нужно создать новый объект и вернуть его – greedybuddha
Clone не является специальным методом, он похож на любой другой метод, что касается Java. Вы должны закодировать его, чтобы фактически клонировать объект, а не просто «возвращать это». – Patashu