国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解

這篇具有很好參考價值的文章主要介紹了為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

我們還是寫一個案例,來探討它的作用。

寫三個類,一個是子類Child.class,一個是父類Person.class,一個是測試類Test.class

為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解,java,開發(fā)語言

Person父類很簡單,就一個屬性code;

為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解,java,開發(fā)語言

Child子類也很簡單,繼承了父類之后,自己也是定義了一個屬性name;

Test類:

為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解,java,開發(fā)語言

創(chuàng)建了兩個Child,屬性code是不一樣的,一個是c1,一個是c2,但是name是相同的,都是“小毛孩”,然后我們現(xiàn)在也沒有在子類Child類上加注解@EqualsAndHashCode(callSuper = true),我們看看運行結(jié)果是如何,通過運行結(jié)果來分析。

運行結(jié)果:

為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解,java,開發(fā)語言

第一個== 是false,我相信大家都懂,因為new了兩個對象,就會在堆中創(chuàng)建出兩個地址不同的對象;

第二個equlas是true,我相信大家是有點疑問的,equals比較的是兩個對象的內(nèi)容值,但是現(xiàn)在這兩個對象的內(nèi)容

一個child1的code是c1,name是“小毛孩”;

一個child2的code是c2,name是“小毛孩”;

那么他們的內(nèi)容值是不同的,為什么最終結(jié)果還是true呢?

原因可能就是和注解EqualsAndHashCode(callSuper = true)有關(guān)嗎,我們先不著急下結(jié)論,我們現(xiàn)在先在子類Child的類上加上這個注解試試。

為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解,java,開發(fā)語言

看到?jīng)]有,@Data注解下面也不會有提示曲線了。

我們再次點擊運行??纯催\行結(jié)果。

運行結(jié)果:

為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解,java,開發(fā)語言

結(jié)果變了,都是false了。所以原因就是這個注解搞的鬼。

注解EqualsAndHashCode(callSuper = true)的作用就是,如果你沒在子類的類上加上的話,那么它是會忽略父類繼承過來的屬性的,只會關(guān)注子類自身的屬性。所以一開始兩個child雖然他們的code是不同的,name是相同的,但是由于沒加上這個注解,忽略了父類的code,只會關(guān)注子類Child的name,就會就是true了。

總結(jié):

@EqualsAndHashCode(callSuper = true)的作用就是不會忽略父類的屬性,也會對父類的屬性進行比較。

最后:

如果大家覺得這篇文章對你們有所幫助的話,麻煩點個免費的贊贊,也祝各位碼農(nóng)在未來的IT道路上越走越遠,謝謝!文章來源地址http://www.zghlxwxcb.cn/news/detail-776660.html

到了這里,關(guān)于為什么需要在bean上使用@EqualsAndHashCode(callSuper = true)這個注解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 網(wǎng)絡(luò)編程——RPC與HTTP基本介紹、歷史追溯、主流應(yīng)用場景、對比分析、為什么還需要使用RPC

    網(wǎng)絡(luò)編程——RPC與HTTP基本介紹、歷史追溯、主流應(yīng)用場景、對比分析、為什么還需要使用RPC

    HTTP協(xié)議(Hyper Text Transfer Protocol) 超文本傳輸協(xié)議 : 一個用于在網(wǎng)絡(luò)上交換信息的標準協(xié)議,它定義了客戶端(例如瀏覽器)和服務(wù)器之間的通信方式。如平時上網(wǎng)在瀏覽器上敲個網(wǎng)址url就能訪問網(wǎng)頁,這里用到的就是HTTP協(xié)議。 明確 HTTP 是一個協(xié)議,是一個超文本傳輸協(xié)議,

    2024年02月16日
    瀏覽(24)
  • 為什么需要數(shù)據(jù)倉庫

    為什么不在OLTP環(huán)境下分析?? OLTP環(huán)境也會存儲歷史數(shù)據(jù),但這些歷史數(shù)據(jù)并不是業(yè)務(wù)運行所需的,這些歷史數(shù)據(jù)需要經(jīng)常歸檔到數(shù)據(jù)倉庫,并且在OLTP數(shù)據(jù)庫中刪除。 相比之下,事務(wù)環(huán)境適用于連續(xù)處理事務(wù),通常應(yīng)用于訂單錄入以及財務(wù)和零售事務(wù)。它們并不依賴歷史數(shù)據(jù)

    2024年01月25日
    瀏覽(32)
  • 為什么需要單元測試?

    為什么需要單元測試?

    為什么需要單元測試? 從產(chǎn)品角度而言,常規(guī)的功能測試、系統(tǒng)測試都是站在產(chǎn)品局部或全局功能進行測試,能夠很好地與用戶的需要相結(jié)合,但是缺乏了對產(chǎn)品研發(fā)細節(jié)(特別是代碼細節(jié)的理解)。 從測試人員角度而言,功能測試和系統(tǒng)測試以及其他性能測試等等對測試

    2024年02月12日
    瀏覽(34)
  • 為什么需要uboot?

    bootROM: 一種固化在芯片內(nèi)部的只讀存儲器(ROM),用于啟動和初始化系統(tǒng)。BootROM 中通常包含了一些預(yù)先編寫好的代碼,用于完成系統(tǒng)啟動前的基本初始化和配置, 例如初始化時鐘、GPIO控制器、中斷控制器、存儲設(shè)備(SD卡、NAND Flash、SPicy Flash)等硬件資源, 檢測啟動設(shè)備

    2023年04月23日
    瀏覽(21)
  • 為什么需要超時控制

    本文將介紹為什么需要超時控制,然后詳細介紹Go語言中實現(xiàn)超時控制的方法。其中,我們將討論 time 包和 context 包實現(xiàn)超時控制的具體方式,并說明兩者的適用場景,以便在程序中以更合適的方式來實現(xiàn)超時控制,提高程序的穩(wěn)定性和可靠性。 超時控制可以幫助我們避免程

    2024年02月03日
    瀏覽(26)
  • 為什么需要websocket?

    為什么需要websocket?

    前端和后端的交互模式最常見的就是前端發(fā)數(shù)據(jù)請求,從后端拿到數(shù)據(jù)后展示到頁面中。如果前端不做操作,后端不能主動向前端推送數(shù)據(jù),這也是http協(xié)議的缺陷。 ? ? ? ?因此,一種新的通信協(xié)議應(yīng)運而生---websocket,他最大的特點就是服務(wù)端可以主動向客戶端推送消息,客

    2024年02月12日
    瀏覽(31)
  • 為什么CPU需要時鐘

    為什么CPU需要時鐘

    為什么CPU需要時鐘這樣一個概念? 什么是時鐘脈沖,CPU為什么需要時鐘,時鐘信號是怎么產(chǎn)生的? 上面這個圖的方波就是一個脈沖,類比于人類的脈搏跳動。一個脈沖稱之為CPU的一個 時鐘信號 ,或者 時鐘脈沖 。一個脈沖周期就叫CPU時鐘周期,一個時鐘周期內(nèi)時鐘信號震蕩一

    2023年04月11日
    瀏覽(21)
  • 為什么自動駕駛需要5G?

    為什么自動駕駛需要5G?

    什么叫自動駕駛? 自動駕駛分為6個等級: Level 0: 人工駕駛,無駕駛輔助系統(tǒng),僅提醒。 Level 1: 輔助人工駕駛,可實現(xiàn)單一的車速或轉(zhuǎn)向控制自動化,仍由人工駕駛(如定速巡航、ACC)。 Level 2: 部分自動駕駛,可實現(xiàn)車速和轉(zhuǎn)向控制自動化,駕駛員必須始終保持監(jiān)控(

    2024年02月08日
    瀏覽(35)
  • 為什么需要對相機標定?

    為什么需要對相機標定?

    以下內(nèi)容來自系統(tǒng)教程如何搞定單目/魚眼/雙目/陣列 相機標定? 點擊領(lǐng)取相機標定資料和代碼 為什么需要對相機標定? 我們所處的世界是三維的,而相機拍攝的照片卻是二維的,丟失了其中距離/深度的信息。從數(shù)學(xué)上可以簡單理解為,相機本身類似一個映射函數(shù),其將輸

    2024年02月06日
    瀏覽(25)
  • 爬蟲時為什么需要代理?

    我們都知道爬蟲時是需要代理地址介入的。使用代理可以隱藏你的真實IP地址,防止被網(wǎng)站封禁或限制訪問。此外,代理還可以幫助你繞過地理限制,訪問被封鎖的網(wǎng)站或服務(wù)。但是請注意,使用代理也可能會帶來一些風(fēng)險,例如代理服務(wù)器可能會記錄你的訪問數(shù)據(jù),或者代

    2024年02月06日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包