LONGEPASS
Q43.

下列何者可比較兩個Java 程式物件的內容是否一樣?

電腦軟體設計(JAVA) · 乙級 · Java · Q43

難易度分析

2 / 5

本題考查 Java 基礎語法中關於物件比對機制的定義。由於選項涵蓋了指派運算子、參考比較與內容比較等區分明顯的概念,只要掌握基本物件導向定義即可作答,不具備複雜的推論過程。

正確答案:③定義equals method 比較內容

③ 定義equals method 比較內容:equals() 方法用於比較兩個物件的邏輯內容。在 Java 中,若要比較物件內容是否相同,必須覆寫 Object.equals() 方法並定義適當的比較邏輯。

錯誤選項解析

  • ① =:= 是指派運算子,用於將值賦給變數,無法用於比較操作。
  • ② ==:== 運算子比較的是兩個物件的記憶體位址(參考),而非物件內容。當兩個不同物件具有相同內容時,== 仍會回傳 false。
  • ④ 定義equals method 比較變數名稱是否相同:equals method 的設計目的是比較物件的內容值,而非比較變數名稱。變數名稱僅是程式碼中的識別字,與物件內容無關。
Learning Tip

"此題考點為 Java 物件比較機制。常見陷阱是混淆 ==(參考比較)與 equals()(內容比較)。實務上,自訂類別若要進行內容比較,必須同時覆寫 equals() 與 hashCode(),以維持兩者契約一致性,否則在使用 HashMap、HashSet 等集合類別時會產生不可預期的行為。"

學員答題分佈

①=0%
②==0%
③定義equals method 比較內容0%
④定義equals method 比較變數名稱是否相同0%

此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!

相似類型題目