「jobject 型の値」と言うときは、toStringによって返される値を意味していると思います。Java doc を見ると、次のように記載されています。
クラス Object の toString メソッドは、オブジェクトがインスタンスであるクラスの名前、アットマーク文字 `@'、およびオブジェクトのハッシュ コードの符号なし 16 進数表現で構成される文字列を返します。つまり、このメソッドは次の値に等しい文字列を返します。
getClass().getName() + '@' + Integer.toHexString(hashCode())
また、 hashCodeメソッドの Java doc を見ると、次のように記載されています。
Java アプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、hashCode メソッドは一貫して同じ整数を返す必要があります。
そしてまた
合理的に実用的である限り、クラス Object によって定義された hashCode メソッドは、個別のオブジェクトに対して個別の整数を返します。(これは通常、オブジェクトの内部アドレスを整数に変換することによって実装されますが、この実装手法は JavaTM プログラミング言語では必要ありません。)
更新: Ryan のコメントへの応答: System.identityHashCodeは、hashcode メソッドがオーバーライドされている場合でも、元のハッシュ コードを取得します。ただし、同様のコメントは、それが本当にユニークではないことに注意してください。
したがって、あなたの質問に対する答えはイエスであり、不変であり、一意である可能性が非常に高いと思いますが、JVM のドキュメントまたはソース コードを読む必要があります。