Object类中clone()的使用方法

我们先看两个图:

 图1

图2

由以上两个图,我们可以知道,要想使用clone()方法需要先implements Cloneable接口(该接口是标记接口,也就意味着必须打上克隆的标识你才能进行克隆)

再看图2 ,Object类中方法名前加protected意味着只有其子类才能访问,其他类访问需要子类重写该方法,而子类重写该方法则要实现图一的接口.

以下是示范例子:

class Student implements Cloneable{

    protected Object clone()throws CloneNotSupportedException{

            return super.clone();
    }

}

main方法中调用的时候注意向下转型

Student s=new Student();

Object obj=s.clone();

Student s1=(Student)obj;

s1就是s的克隆体,但是地址值不一样.

猜你喜欢

转载自blog.csdn.net/shui_jin_shan/article/details/84058963