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

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

關(guān)于equals的問題。

關(guān)于equals的問題。

Beaten丶 2016-01-21 14:20:28
class Person{ private String name ; // 定義name屬性 private int age ; // 定義age屬性 public Person(String name,int age){ this.name = name ; this.age = age ; } public boolean equals(Object obj){ if(this==obj){ // 地址相等 return true ; // 肯定是同一個對象 } if(!(obj instanceof Person)){ // 不是Person對象 return false ; } Person per = (Person) obj ; // 向下轉(zhuǎn)型 if(per.name.equals(this.name)&&per.age == this.age){ return true ; // 依次比較內(nèi)容 }else{ return false ; } } public String toString(){ return "姓名:" + this.name + ";年齡:" + this.age ; }};public class ObjectDemo03{ public static void main(String args[]){ Person per1 = new Person("李興華",30) ; // 實例化Person Person per2 = new Person("李興華",30) ; // 實例化Person System.out.println(per1.equals(per2)?"是同一個人!" : "不是同一個人!") ; System.out.println(per1.equals("hello")?"是同一個人!" : "不是同一個人!") ; }};在程序public boolean equals(Object obj)中重寫了equals,但是equals中if(per.name.equals(this.name)&&per.age == this.age)的equals方法是調(diào)用String中的equals方法 還是調(diào)用重寫的public boolean equals(Object obj)方法呢。為什么 求詳細(xì)解,頭都整大了。
查看完整描述

6 回答

?
killer00go

TA貢獻(xiàn)11條經(jīng)驗 獲得超2個贊

if(!(obj instanceof Person)){ // 不是Person對象

System.out.println("不相等");//加一句代碼進(jìn)去就知道了

return false ;

}


查看完整回答
反對 回復(fù) 2016-01-22
?
killer00go

TA貢獻(xiàn)11條經(jīng)驗 獲得超2個贊

System.out.println(per1.equals(per2)調(diào)用重寫的方法public boolean equals(Object obj){},而System.out.println(per1.equals("hello")?"是同一個人!" : "不是同一個人!") ;也是調(diào)用重寫方法public boolean equals(Object obj){}

查看完整回答
反對 回復(fù) 2016-01-22
?
IMOOCER_Vi

TA貢獻(xiàn)7條經(jīng)驗 獲得超4個贊

好像說的不是很清楚,再說一下吧,你在自己重寫的equals方法中隨意加一個輸出語句,然后運(yùn)行以后不就可以判斷出來了嗎。我運(yùn)行以后的結(jié)果證明調(diào)用的是重寫以后的equals方法

查看完整回答
反對 回復(fù) 2016-01-21
?
微涼一季

TA貢獻(xiàn)44條經(jīng)驗 獲得超97個贊

調(diào)用的是String的,因為你調(diào)用方法的對象是name這個string呀,你直接用per.equals就是調(diào)用你寫的方法了

查看完整回答
反對 回復(fù) 2016-01-21
  • Beaten丶
    Beaten丶
    不是很懂,程序執(zhí)行到per1.equals(per2)的時候,要調(diào)用equals方法,因為equals方法已經(jīng)被重寫了,所以調(diào)用public boolean equals(Object obj),然后執(zhí)行到if語句就不清楚怎么執(zhí)行了。
  • 6 回答
  • 0 關(guān)注
  • 2004 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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