java 的自我克隆

来源:互联网 发布:淘宝女童模特孙佳怡 编辑:程序博客网 时间:2024/06/07 01:42
/*自定义类实现“克隆”的步骤如下
 * 1.自定义类实现Cloneable接口。这是一个标记性的接口,实现该接口的对象可以实现“自我克隆”,接口里没有定义任何方法
 * 2.自定义类实现自己的clone()方法
 * 3.实现clone()方法是通过super.clone()方法;调用Object实现的clone()方法来得到该对象的副本,并返回该副本。
 * 
 * 
 * */


package seven1;
class Address
{
String detail;
public Address(String detail)
{
this.detail=detail;
}
}


//实现Cloneable接口
class User implements Cloneable
{
   int age;
   Address address;
   public User(int age)
   {
  
  this.age=age;
  address=new Address("广州天河");
  //通过调用super.clone()
   }
   public User clone() throws CloneNotSupportedException
   {
  return (User)super.clone();
   }
}


public class CloneTest {


public static void main(String[] args) throws CloneNotSupportedException
{
// TODO 自动生成的方法存根
User u1=new User(29);
//clone得到u1对象的副本
User u2=u1.clone();
//判断u1,u2是否相等
System.out.println(u1==u2);
//判断u1,u2的address是否相同
System.out.println(u1.address==u2.address);




}


}
0 0
原创粉丝点击