这个操作少出现。
使用相同内容创建一个新的对象。
使用Object类中的clone()方法。
所有的类都会继承Object父类,所以所有的类都会有clone()的方法,但是并不是所有的类都希望被克隆。
所以如果要想实现对象的克隆,对象所在的类需要实现一个Cloneable接口,此接口没有任何的方法提供,是因为它描述的是一种能力。
实现对象克隆:
public class Member implements Cloneable{ private String name; private int age; public Member(String name,int age){ this.name = name; this.age = age; } @Override public String toString() { return "【" + super.toString() + "】name = " + this.name + "/ age = " + this.age; } @Override protected Object clone() throws CloneNotSupportedException{ return super.clone(); // 调用父类的clone()方法 } }
public class Main { public static void main(String[] args) throws Exception{ Member mb1 = new Member("李强",31); Member mb2 = (Member) mb1.clone(); // 克隆操作 System.out.println(mb1); System.out.println(mb2); } }
内容一样但是对象不同。