第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

equals使用問題

為什么我的size的屬性值不同而使用equals時,輸出的結(jié)果是“兩個對象相同”呢?

http://img1.sycdn.imooc.com//59a400190001271210200556.jpg

http://img1.sycdn.imooc.com//59a4001a000140d510970603.jpg

http://img1.sycdn.imooc.com//59a4001b00019e7610970602.jpg


正在回答

3 回答

那當(dāng)然也不同了,雖然Iphone1類和Iphone2類的屬性相同,值也相同,但父類Iphone1下有一個隱式的equals方法,比較的是對象的引用,而Iphone2類中你重寫了equals方法,比較的是對象的類型,這兩個equals方法的類型、名稱雖然相同,但方法內(nèi)的代碼不同,所以無論屬性如何,對象iphone和對象iphone2的類型都是不同的。所以,要在保證對象方法完全一樣的前提下,去比較屬性名和屬性值是否相同。http://img1.sycdn.imooc.com//59a4d3d10001c97c05190419.jpg

1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

zxj2333 提問者

非常感謝!
2017-08-29 回復(fù) 有任何疑惑可以回復(fù)我~

不能在類中賦值,要再實例化對象后用 iphone.size=6 賦值

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕粉3631469

子類Iphone2的equals方法是對Object類的重寫,和Iphone1沒關(guān)系。你實例化對象iphone和對象iphone2的時候new的都是Iphone2類,所以Iphone1中的屬性和其值都沒用上。實際上對象iphone和對象iphone2是同類型同屬性值的
2017-08-28 回復(fù) 有任何疑惑可以回復(fù)我~
#2

zxj2333 提問者 回復(fù) 慕粉3631469

我是重寫equals方法比較兩個對象的屬性是否相同。如果創(chuàng)建Iphone1和Iphone2兩個對象的話,就是兩個不同的地址的。
2017-08-28 回復(fù) 有任何疑惑可以回復(fù)我~
#3

慕粉3631469 回復(fù) zxj2333 提問者

地址的確是不同的,但屬性值是一樣的,因為你沒有單獨給兩個對象的屬性賦不同的值,兩個對象用的都是Iphone2類下初始的值
2017-08-28 回復(fù) 有任何疑惑可以回復(fù)我~
#4

zxj2333 提問者 回復(fù) 慕粉3631469

你是說這樣嗎? Iphone1 iphone = new Iphone1(); Iphone2 iphone2 = new Iphone2(); 但是這樣在屬性值相同的時候,結(jié)果是“兩個對象不同”
2017-08-28 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)

Iphone1.java保存了嗎

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕粉3631469

實例化對象的時候用的都是Iphone2類
2017-08-28 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
Java入門第二季 升級版
  • 參與學(xué)習(xí)       531100    人
  • 解答問題       6280    個

課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙

進(jìn)入課程

equals使用問題

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號