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...