Java中如何使用Serializable接口实现对象的复制   最好有个小例子

解决方案 »

  1.   

    实现Serializable接口,只能说明这个类可以序列化!
    实现对象复制可以实现Clonable接口,
    package entity;public class User implements Cloneable {
    private String name;
    private int age;
    @Override
    public User clone() {
    // TODO Auto-generated method stub
    User user = null;
    try{
     user = (User)super.clone();
    }catch(Exception ex){
    ex.printStackTrace();
    }
    return user;
    }
    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;
    }

    }package test;import entity.User;public class Test {
    public static void main(String[] args) {
    User user = new User();
    user.setAge(20);
    user.setName("mingjian");
    User u = user.clone();
    System.out.println("name: "+u.getName()+"  age: "+u.getAge());
    u.setName("zhengmingjain");
    System.out.println("name: "+u.getName()+"  age: "+u.getAge());
    System.out.println("name: "+user.getName()+"  age: "+user.getAge());
    }
    }
    运行结果:
    name: mingjian  age: 20
    name: zhengmingjain  age: 20
    name: mingjian  age: 20
      

  2.   

    要实现对象的复制可以实现Clonable接口,实现Serializable接口主要用于序列化对象的。