java中new和clone对象那个快
public class student implements Cloneable {
private String name;
public String getName(){
this,name = name;
}
public void setName(String name){
this.name = name;
}
public student(String name){
this.name = name;
}
@Override
protected Student clone() throws CloneNotSupportedException {
return (Student )super.clone();
}
}
public class TestClass {
private static final int COUNT = 10000*100;
public static void main(String[] args) throws CloneNotSupportedException {
long s1 = System.currentTimeMillis();
for(int i=0;i<COUNT ;i++){
student s = new student ("jj");
}
long s2 = System.currentTimeMillis();
student ss = new student ("jj")
for(int i=0;i<COUNT ;i++){
student sss = ss.clone();
}
long s3 = System.currentTimeMillis();
System.out.println(s2-s1);
System.out.println(s3-s2);
}
}
上述方法输出结果
4
58
显示是new快
如果把Student 中的构造方法更改一下
public student(String name){
this.name = name;
System.out.println("uuuuu")
}
输出结果
58
4
显示clone快
new 和clone谁快,看在具体的情况下进行比较的。