[英]I can't understand a certain line in the following piece of code
我無法弄清楚“最終人選”這一行的意義。 在第一個條件測試中,執行控件以檢查參數是否不為null,這對我來說很有意義。 其次,如果類是相同的,那么可以進行比較,這對我又有意義。 但是我迷失了,因為我不了解創建另一個Person對象並將其用作參考的必要性。
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Person other = (Person) obj;
if (!Objects.equals(this.surname, other.surname)) {
return false;
}
if (!Objects.equals(this.name, other.name)) {
return false;
}
return true;
}
感謝您的時間 :)
通過將other
聲明為final
,這意味着一旦設置了值就無法更改。
您要強制轉換為Person
對象的原因是因為Object
的參數類型。 這意味着您可以獲取Object
類中的所有方法。 通過將其強制轉換為Person
,您可以訪問Person
類中的所有方法。 可以通過以下方式實現相同的功能:
((Person)obj).personMethod();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.