java中克隆(浅拷贝)的简单使用代码

java中克隆的使用

1) 在被克隆类中,要提供实现克隆的接口:

class Cat implements Cloneable{
    }

2) 在被克隆的类中重写clone方法,使其public化

    class Cat implements Cloneable{

        public Object clone()throws CloneNotSupportedException{
            retunr super.clone();//返回父类的clone方法,抛出异常
        }
    }

3) 需要克隆的类

 //通过向下转型将克隆的Object类型转换为想要的类型.
    public class CloneCatTest {
        public static void main(String[] args) throws CloneNotSupportedException {
            Cat c = new Cat();
            Object o=c.clone();//向下转型
            Cat cat=(Cat) o;
            System.out.println(cat);//@7852e922
            System.out.println(c);//@4e25154f
        }   
    }//注意事项见第4点

4) 克隆出来的副本和原来的类new的地址不同,但是成员变量值相同,这属于浅拷贝。

你可能感兴趣的:(java中克隆(浅拷贝)的简单使用代码)