Java的clone 菜鳥專區

2021-08-20 13:14:57 字數 1332 閱讀 7502

clone()的存在更像是表達了一種模式:

內在的東西一處改變,便都改變了,外面的東西都可以定製,隨心所欲,像極了我們生活的世界

user實體類**如下:

package com.excel.upload.pojo;

/**實體類

* @author xinjian

* @create 2018/6/7 0007

*/public class user implements cloneable

public user getcloneobject() catch (clonenotsupportedexception e)

return null;

}public string getname()

public void setname(string name)

public integer getage()

public void setage(integer age)

public address getaddress()

public void setaddress(address address)

@override

public string tostring() ';

}}

address實體類:

package com.excel.upload.pojo;

/** * @author xinjian

* @create 2018/6/7 0007

*/public class address

public void setname(string name)

public string getcode()

public void setcode(string code)

public integer getpeoples()

public void setpeoples(integer peoples)

@override

public string tostring() ';

}}

測試**:

@test

public void testclone()

@test

public void testmapclone()

執行結果:

user}

user}

user}

Java中的clone和深度clone

複製物件 or 複製引用 person p new person 23,zhang person p1 p system.out.println p system.out.println p1 當person p1 p 執行之後,是建立了乙個新的物件嗎?首先看列印結果 person p new pe...

java 實現物件的clone

物件的 賦值只是傳遞引用,其本質還是指向乙個引用。當改變乙個物件的值時,另乙個也會改變 例如 public class student implements cloneable catch exception e return s public string getname public void ...

Java中的clone方法

1.功能 由方法名 轉殖 可知是複製乙個物件,方法呼叫後會建立並返回此物件的乙個副本。2.為什麼不用 以賦值的方式建立物件副本?student stu1 new student zhaoliu 18,1996 11 20 student stu2 stu1 stu2.setname lisi sys...