首先要乙個類有clone()複製方法,必須實現乙個介面cloneable
class cloneclass implements cloneablecatch(clonenotsupportedexception e)
return o; } }
下面例子說明
class a implements cloenablecatch(clonenotexception e)}}
class b
如果你想要乙個物件的複本,但還需要它實時的值就用clone,用new 生成的例項 帶的字段 不會變 i=1;
a a =new a();
a.i=2;
b b=new b()
b.i=2;
如果給a 和b各建立乙個複本a2 b2
a a2=a.clone();
b b2=new b();
a2的 i=2 ;b2 的i=1; 這就是區別
iOS開發new與alloc init的區別
概括來說,new和alloc init在功能上幾乎是一致的,分配記憶體並完成初始化。差別在於,採用new的方式只能採用預設的init方法完成初始化,採用alloc的方式可以用其他定製的初始化方法。英文詳解 1.在實際開發中很少會用到new,一般建立物件咱們看到的全是 classname alloc ...
iOS開發new與alloc init的區別
1.在實際開發中很少會用到new,一般建立物件咱們看到的全是 classname alloc init 但是並不意味著你不會接觸到new,在一些 中還是會看到 classname new 還有去面試的時候,也很可能被問到這個問題。2.那麼,他們兩者之間到底有什麼區別呢 我們看原始碼 new 而 al...
iOS開發new與alloc init的區別
概括來說,new和alloc init在功能上幾乎是一致的,分配記憶體並完成初始化。差別在於,採用new的方式只能採用預設的init方法完成初始化,採用alloc的方式可以用其他定製的初始化方法。英文詳解 1.在實際開發中很少會用到new,一般建立物件咱們看到的全是 classname alloc ...