jvm - How is the == operator implemented in Java? -


specifically, in case of object reference equality, == operator do?

does comparison return true if references evaluate same object address @ time of comparison? or utilize hashcode value of 2 references determine if objects same?

to specific here, know what data structures managed jvm referenced == operation reference comparison. == rely on oop perform reference comparison?

unfortunately me, jls not define how == operator must work. java api docs not mention == supposed (they're classes, right?)

ps: bit intrigued question on hashcode uniqueness, , prefer know how sun jvm (or openjdk) implements == operator.

the == operator compares references.

references in jvm standard object pointer. works out single 32bit or 64bit integer value (depending on platform).

when compare 2 object references, you're comparing 2 32bit or 64bit integers, , if they're same, you'll equate equal. integer values location in memory.


Comments