Java clone 與 new 的區別

2021-06-22 11:12:35 字數 479 閱讀 2265

首先要乙個類有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 ...