Java 对象的克隆
克隆:将已存在的对象复制一份,称为对象的克隆
若某个类的对象想要实现克隆,需要执行两个步骤:
(1)则必须实现Cloneable接口,该接口是一个空的接口,里面没有定义任何方法,
因此被称为标记接口。
(2)这个类还需要重写clone()方法。
代码示例
package com.seven.javaSE; public class CloneDemo { public static void main(String[] args) { Dog dd = new Dog("大黄",6); try { Dog dd2 = (Dog)dd.clone(); System.out.println(dd); System.out.println(dd2); System.out.println(dd==dd2);//false, dd和dd2的属性值和方法一模一样,但是内存地址不同,属于两个对象 } catch (CloneNotSupportedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } /* * 实现克隆操作就两个步骤: * (1)实现Cloneable接口 * (2)重写从Object类继承的clone()方法 */ class Dog implements Cloneable{ private String name; private int age; public Dog() { super(); } public Dog(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "[name=" + name + ", age=" + age + "]"; } @Override protected Object clone() throws CloneNotSupportedException { // TODO Auto-generated method stub return super.clone(); } }
本文来自博客园,作者:藤原豆腐渣渣,转载请注明原文链接:https://www.cnblogs.com/javafufeng/p/16307029.html