欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Java編程中避免equals方法的隱藏陷阱介紹-創(chuàng)新互聯(lián)

摘要

創(chuàng)新互聯(lián)專注于臺(tái)山企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),商城網(wǎng)站建設(shè)。臺(tái)山網(wǎng)站建設(shè)公司,為臺(tái)山等地區(qū)提供建站服務(wù)。全流程按需開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

本文描述重載equals方法的技術(shù),這種技術(shù)即使是具現(xiàn)類的子類增加了字段也能保證equal語義的正確性。

在《Effective Java》的第8項(xiàng)中,Josh Bloch描述了當(dāng)繼承類作為面向?qū)ο笳Z言中的等價(jià)關(guān)系的基礎(chǔ)問題,要保證派生類的equal正確性語義所會(huì)面對的困難。Bloch這樣寫到:

除非你忘記了面向?qū)ο蟪橄蟮暮锰?,否則在當(dāng)你繼承一個(gè)新類或在類中增加了一個(gè)值組件時(shí)你無法同時(shí)保證equal的語義依然正確

在《Programming in Scala》中的第28章演示了一種方法,這種方法允許即使繼承了新類,增加了新的值組件,equal的語義仍然能得到保證。雖然在這本書中這項(xiàng)技術(shù)是在使用Scala類環(huán)境中,但是這項(xiàng)技術(shù)同樣可以應(yīng)用于Java定義的類中。在本文中的描述來自于Programming in Scala中的文字描述,但是代碼被我從scala翻譯成了Java

常見的等價(jià)方法陷阱

java.lang.Object 類定義了equals這個(gè)方法,它的子類可以通過重載來覆蓋它。不幸的是,在面向?qū)ο笾袑懗稣_的equals方法是非常困難的。事實(shí)上,在研究了大量的Java代碼后,2007 paper的作者得出了如下的一個(gè)結(jié)論:

幾乎所有的equals方法的實(shí)現(xiàn)都是錯(cuò)誤的!

這個(gè)問題是因?yàn)榈葍r(jià)是和很多其他的事物相關(guān)聯(lián)。例如其中之一,一個(gè)的類型C的錯(cuò)誤等價(jià)方法可能意味著你無法將這個(gè)類型C的對象可信賴的放入到容器中。比如說,你有兩個(gè)元素elem1和elem2他們都是類型C的對象,并且他們是相等,即 elem1.equals(elm2) 返回ture。但是,只要這個(gè)equals方法是錯(cuò)誤的實(shí)現(xiàn),那么你就有可能會(huì)看見如下的一些行為:

Set hashSet<c> = new java.util.HashSet<c>();
hashSet.add(elem1);
hashSet.contains(elem2);  // returns false!</c></c>

網(wǎng)頁標(biāo)題:Java編程中避免equals方法的隱藏陷阱介紹-創(chuàng)新互聯(lián)
本文地址:http://aaarwkj.com/article34/jspse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)自適應(yīng)網(wǎng)站、軟件開發(fā)、全網(wǎng)營銷推廣、響應(yīng)式網(wǎng)站、虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
国产精品老熟女一区二区| 亚洲国产精品有码专区| 国产传媒欧美日韩成人精品| 日本黄色一区二区三区四区| 91精品国内手机在线高清| 亚洲毛片一区二区在线| 亚洲熟女午夜毛片av毛片| 欧美日韩国产精品综合| 未满十八禁止观看免费| 日韩人妻一区中文字幕| 国产综合中文字幕不卡| 欧洲精品久久久久久| 中文字幕一区二区三区不卡日日| 可以直接看内射的视频| 欧美日韩国产成人一区| 日韩国产推荐一区二区| 国产男女猛烈无遮挡av| 国产爆操美女在线观看| 成人免费大片在线观看视频| 午夜精品久久99蜜桃| 成年人免费久久毛片| 日本在线高清不卡免费播放| 免费国产午夜福利在线| 日韩一区二区亚洲精品| 视频一区视频二区三区| 99热久久精品免费精品| 欧美国产日韩一区二区三区视频| av免费观看一区二区三区| 色婷婷久久综合中文久久| 另类视频网站在线观看| 国产伦人偷精品免费视频| 操女逼无遮挡国产av| 亚洲综合激情一区二区| 一区二区三区在线观看美女视频| 老色鬼久久亚洲av综合| 青青草原在线视频观看| 日本成人午夜福利在线观看| 日韩精品一区二区三区电影在线播放| 性生活视性生活大片日本| 青青草视频在线好好热| 日本黄色中文字幕网站|