JAVA中的浅拷贝与深拷贝

JAVA中的浅拷贝与深拷贝

 

浅拷贝:实现Clonenable接口并覆盖clone()方法

 1       @Override 
 2       public Object clone() { 
 3             Student stu = null; 
 4             try{ 
 5                stu = (Student)super.clone(); 
 6             }catch(CloneNotSupportedException e) { 
 7                 e.printStackTrace(); 
 8             } 
 9             return stu; 
10       } 

 

深拷贝:

 1       @Override 
 2       public Object clone() { 
 3             Student stu = null; 
 4             try{ 
 5                 stu = (Student)super.clone(); 
 6             }catch(CloneNotSupportedException e) { 
 7                 e.printStackTrace(); 
 8             } 
 9         stu.addr = (Address)addr.clone();    //深度复制
10             return stu; 
11       } 

 

 

posted @ 2018-03-25 15:10  ~风铃~  阅读(125)  评论(0编辑  收藏  举报