Метод clone() класса Object в Java
Метод Object clone() используется для создания и возврата копии объекта.
Метод clone выполняет поверхностное копирование. Для объектов, на которые ссылаются свойства внутри объекта, копируется только адрес ссылки, а память для объекта, на который ссылаются, не перераспределяется. В отличие от этого, глубокое копирование также заново создает объекты, на которые ссылаются.
Синтаксис
object.clone()
Parameters
Отсутствует 。
Возвращаемое значение
Возвращает копию объекта.
Поскольку сам Object не реализует интерфейс Cloneable, вызов метода clone без его переопределения приведет к исключению CloneNotSupportedException.
Пример
В следующем примере создается объект obj1, затем obj1 копируется в obj2, и значения переменных выводятся через obj2:
Пример
class ExampleTest implements Cloneable {
//Объявление переменных
String name;
int likes;
public static void main(String[] args) {
//Создать объект
ExampleTest obj1 = new ExampleTest();
//Инициализация переменных
obj1.name = "Example";
obj1.likes = 111;
//Печать вывода
System.out.println(obj1.name); // Example
System.out.println(obj1.likes); // 111
try {
//Создайте копию obj1
ExampleTest obj2 = (ExampleTest) obj1.clone();
//Используйте obj2 для вывода переменных
System.out.println(obj2.name); // Example
System.out.println(obj2.likes); // 111
} catch (Exception e) {
System.out.println(e);
}
}
}
Приведённая выше программа выдаёт следующий результат:
Example 111 Example 111
Другие расширения
Класс Object в Java