首先介紹Java中的淺拷貝(淺克隆)和深拷貝(深克隆)的基本概念:對象
淺拷貝: 被複制對象的全部變量都含有與原來的對象相同的值,而全部的對其餘對象的引用仍然指向原來的對象。淺複製僅僅複製所考慮的對象,而不復制它所引用的對象。變量
深拷貝:被複制對象的全部變量都含有與原來的對象相同的值,除去那些引用其餘對象的變量。那些引用其餘對象的變量將指向被複制過的新對象,而再也不是原有的那些被引用的對象。深複製把要複製的對象所引用的對象都複製了一遍。 引用