Why there is no way to get current address of an Object in pure java? And how actually == operator works? Is there any possibility to compare references to objects not using this operator?
See Question&Answers more detail:osWhy there is no way to get current address of an Object in pure java? And how actually == operator works? Is there any possibility to compare references to objects not using this operator?
See Question&Answers more detail:osQ1: No way to get obj's mem location: Original creators of Java decided that this was not necessary to the language. Moreover, Java is now quite a old/venerable language, and it has never been added to the language, which means no one ever needed it.
Q2. how == works: this returns true if two values on the stack are the same value. I believe that the java language specification demands that these two objects / primatives be of the same type. I don't know if you could hack this in the bytecode... The answer to this may be JVM specific.