JVM GC가 참조 비교 중에 객체를 이동하여 양쪽이 동일한 객체를 참조하더라도 비교가 실패 할 수 있습니까? GC가 때때로 메모리에서 객체를 이동한다는 것은 잘 알려져 있습니다. 그리고 객체가 이동 될 때 (사용자 코드가 호출되기 전에) 모든 참조가 업데이트되는 한, 이것은 완벽하게 안전해야한다는 것을 이해합니다. 그러나 누군가가 참조 비교 중에 GC에 의해 객체가 이동되어 두 참조가 동일한 객체를 참조해야 할 때도 비교가 실패 할 수 있기 때문에 참조 비교가 안전하지 않을 수 있다고 언급하는 것을 보았습니다. 즉, 다음 코드가 "true"를 인쇄하지 않는 상황이 있습니까? Foo foo = new Foo(); Foo bar = foo; if(foo == bar) { System.out.println(..