欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java实现Cloneable接口克隆对象,javacloneable,下面实例展示如何一个类如

来源: javaer 分享于  点击 35588 次 点评:47

java实现Cloneable接口克隆对象,javacloneable,下面实例展示如何一个类如


下面实例展示如何一个类如何实现Cloneable接口,并展示如何克隆对象

/** * Main.java * * @author byrx.net */public class Main {    /**     * 创建克隆对象     */    public void cloneObject() {        Person person1 = new Person();        person1.setFirstName("Obi-Wan");        person1.setLastName("Kenobi");        Person person2 = (Person)person1.clone();        Person person3 = (Person)person2.clone();        System.out.println("Person 1: " + person1.getFirstName() + " " + person1.getLastName());        System.out.println("Person 2: " + person2.getFirstName() + " " + person2.getLastName());        System.out.println("Person 3: " + person3.getFirstName() + " " + person3.getLastName());    }    /**     * The Person class     */    class Person implements Cloneable {        private String firstName;        private String lastName;        public Object clone() {            Person obj = new Person();            obj.setFirstName(this.firstName);            obj.setLastName(this.lastName);            return obj;        }        public String getFirstName() {            return firstName;        }        public void setFirstName(String firstName) {            this.firstName = firstName;        }        public String getLastName() {            return lastName;        }        public void setLastName(String lastName) {            this.lastName = lastName;        }    }    /**     * Starts the program     *     * @param args the command line arguments     */    public static void main(String[] args) {        new Main().cloneObject();    }}

因为我们是从同一个对象克隆了三个对象,所以得到的输出结果如下:

Person 1: Obi-Wan KenobiPerson 2: Obi-Wan KenobiPerson 3: Obi-Wan Kenobi
相关栏目:

用户点评