亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java里的深克隆與淺克隆問題,百度看著傻傻分不清

java里的深克隆與淺克隆問題,百度看著傻傻分不清

馮寶寶 2017-11-26 22:13:32
有人說這樣的是淺克?。篶lass Book implements Cloneable{ private String name; private double price; public String getName() { return name; } public void setName(String name) { this.name = name; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public Book(String name,double price){ this.name=name; this.price=price; } @Override public String toString(){ return name+":"+price; } @Override public Object clone() throws CloneNotSupportedException{ return super.clone(); }}class Student{ private String name; private Book book;}public class CloneTest { public static void main(String[] args) throws CloneNotSupportedException { Book b1 = new Book("luoweideshenlin",26); Book b2 = (Book)b1.clone();//不等價:b2=b1; b2.setName("pingfandeshijie"); b2.setPrice(78); System.out.println(b1.toString()); System.out.println(b2.toString()); System.out.println(b1==b2); }}這個的輸入結果是:luoweideshenlin:26.0pingfandeshijie:78.0false那怎么樣算深克隆呢,
查看完整描述

1 回答

?
cxxyjsj

TA貢獻119條經驗 獲得超22個贊

深復制不僅復制對象本身,也會復制對象的成員變量. 你可以試下Student類默認的克隆方法, 克隆后兩個Studnet對象引用的book對象實際上是同一個.

查看完整回答
反對 回復 2017-11-27
  • 1 回答
  • 0 關注
  • 1289 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號