欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中equals()方法重寫(xiě)實(shí)現(xiàn)代碼

 更新時(shí)間:2017年05月09日 10:57:37   投稿:lqh  
這篇文章主要介紹了Java中equals()方法重寫(xiě)實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下

Java中equals()方法重寫(xiě)實(shí)現(xiàn)代碼

  Java中的equals()方法是在Object類中定義,Object類是所有類的父類。換句話說(shuō),任何類都隱含地繼承了該方法。判斷兩個(gè)對(duì)象的內(nèi)容是否相同,必須使用equals()方法,對(duì)于沒(méi)有重寫(xiě)該方法的類,需要重寫(xiě)該方法。

重寫(xiě)equals()方法代碼如下:


/** 
 *equlas()方法重寫(xiě)實(shí)例 
 */ 
class User { 
 /** 
 *方法描述:設(shè)置name值 
 *輸入?yún)?shù):String name 
 *返回類型:void 
 */ 
 public void setName(String name) { 
 this.name = name; 
 } 
 
/** 
 *方法描述:獲取name值 
 *輸入?yún)?shù): 
 *返回類型:String 
 */ 
 public String getName() { 
  return name; 
 } 
 
/** 
 *方法描述:重寫(xiě)equals()方法 
 *輸入?yún)?shù):Object obj 
 *返回類型:boolean 
 */ 
 
public boolean equals(Object obj) { 
 if(this == obj) { 
  return true; 
 } 
 if(null == obj) { 
  return false; 
 } 
 if(getClass() != obj.getClass()) { 
  return false; 
 } 
 
 User user = (User) obj; 
 if(!name.equals(user.name)) { 
 return false; 
 } 
 return true; 
} 
 private String name; 
} 
 
public class EqualsDemo { 
 public static void main(String[] args) { 
 User userA = new User(); 
 userA.setName("王明"); 
  
 User userB = new User(); 
 userB.setName("王明"); 
 
 User userC = new User(); 
 userC.setName("王亮"); 
 
 System.out.println("userA equals userB:" + userA.equals(userB)); 
 System.out.println("userA equals userC:" + userA.equals(userC)); 
 } 
} 

運(yùn)行結(jié)果如下所示:

  總結(jié):

 1.對(duì)象內(nèi)容的比較,需要使用equals()方法,若是對(duì)于已經(jīng)重寫(xiě)該方法的類,例如String類,就無(wú)需再重寫(xiě);若是沒(méi)有重寫(xiě),例如自定義的User類,就需要重寫(xiě)。

 2.Java語(yǔ)言中的“==”對(duì)于基本數(shù)據(jù)類型就是比較其值,而對(duì)于對(duì)象就是比較對(duì)象的引用。

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • spring boot基于注解的聲明式事務(wù)配置詳解

    spring boot基于注解的聲明式事務(wù)配置詳解

    這篇文章主要介紹了spring boot基于注解的聲明式事務(wù)配置詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • SpringBoot結(jié)合Redis哨兵模式的實(shí)現(xiàn)示例

    SpringBoot結(jié)合Redis哨兵模式的實(shí)現(xiàn)示例

    這篇文章主要介紹了SpringBoot結(jié)合Redis哨兵模式的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • mybatis那些約定的配置你真的都了解嗎(經(jīng)驗(yàn)總結(jié))

    mybatis那些約定的配置你真的都了解嗎(經(jīng)驗(yàn)總結(jié))

    mybatsi中Mapper和xml文件之間有很多約定俗稱的規(guī)則,比如名稱匹配,包掃描,別名等,這些規(guī)則是什么。如果想更加靈活,該如何配置呢?今天就給大家講一下如何配置mybatsi的xml文件
    2021-06-06
  • SpringBoot配置攔截器的示例

    SpringBoot配置攔截器的示例

    這篇文章主要介紹了SpringBoot配置攔截器的示例,幫助大家更好的理解和使用springboot框架,感興趣的朋友可以了解下
    2020-11-11
  • mybatis整合springboot報(bào)BindingException:Invalid?bound?statement?(not?found)異常解決

    mybatis整合springboot報(bào)BindingException:Invalid?bound?stateme

    這篇文章主要給大家介紹了關(guān)于mybatis整合springboot報(bào)BindingException:Invalid?bound?statement?(not?found)異常的解決辦法,這個(gè)錯(cuò)誤通常是由于Mapper文件中的statement?id與Java代碼中的方法名不一致導(dǎo)致的,需要的朋友可以參考下
    2024-01-01
  • IntelliJ IDEA2021.1 配置大全(超詳細(xì)教程)

    IntelliJ IDEA2021.1 配置大全(超詳細(xì)教程)

    這篇文章主要介紹了IntelliJ IDEA2021.1 配置大全(超詳細(xì)教程),需要的朋友可以參考下
    2021-04-04
  • JAVA Spring中讓人頭痛的JAVA大事務(wù)問(wèn)題要如何解決你知道嗎

    JAVA Spring中讓人頭痛的JAVA大事務(wù)問(wèn)題要如何解決你知道嗎

    這篇文章主要介紹了Java Spring事務(wù)使用及驗(yàn)證過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Java基礎(chǔ)教程_判斷語(yǔ)句if else

    Java基礎(chǔ)教程_判斷語(yǔ)句if else

    下面小編就為大家?guī)?lái)一篇Java基礎(chǔ)教程_判斷語(yǔ)句if else。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • Idea2023配置JavaWeb項(xiàng)目(最新)

    Idea2023配置JavaWeb項(xiàng)目(最新)

    本文將介紹如何配置JavaWeb項(xiàng)目,以在Idea中實(shí)現(xiàn)開(kāi)發(fā)環(huán)境,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09
  • 關(guān)于synchronized有趣的同步問(wèn)題

    關(guān)于synchronized有趣的同步問(wèn)題

    今天小編就為大家分享一篇關(guān)于關(guān)于synchronized有趣的同步問(wèn)題,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01

最新評(píng)論