关于调用clone()方法的问题
代码如下:
----------------------------------------------------------------------------------------------
class Person2 implements Cloneable {
private String name=null;
public Person2(String name) {
this.name=name;
}
public void setName(String name) {
this.name=name;
}
public String getName() {
return this.name;
}
public Object clone() throws CloneNotSupportedException {
return super.clone(); //clone()不是不可视么?为什么这里却可以成功调用?
}
public String toString() {
return "姓名: "+this.getName();
}
}
public class Test8 {
public static void main(String[] args) throws Exception{
Person2 p1=new Person2("张三");
Person2 p2=(Person2)p1.clone();
//我试着写了这些代码:
//String str1="good";
//String str2=(String)str1.clone();
//却被告知clone()不可视,因此引出上面问题
p2.setName("李四");
System.out.println("原始对象: "+p1);
System.out.println("克隆之后的对象: "+p2);
}
}