克隆是另一個作用,比如,你要傳遞給另一個對象的某個方法method的參數中包含A對象,但是,你不知道這個方法是不是對你的A進行了修改,而你又不想他修改,或者說他修改了也不會對你有任何影響,你就可以使用克隆來完成這個任務。這樣即使他修改了,也只是對你的克隆對象的修改,而沒有對你的那個對象本身進行修改。克隆還有一個作用,對于數據bean,如果你有beanA,想快速創建一個類似的beanB,而只是其中的一兩個屬性不一樣,就可以使用克隆來完成了。克隆還需要注意深度克隆的問題,舉個例子:你的對象A中包含了對象B,對象A實現了克隆,對象B沒有實現克隆,如果你在對A進行克隆的時候,克隆成對象A2,則A2中也包含對象B,而且,這兩個引用是一樣的,如果你修改A對象中的B對象的某個值,也會修改到A2對象中的B對象的對應屬性的值。
新聞熱點
疑難解答