SORU
30 HAZİRAN 2009, Salı


Nasıl JVM Sistem kabul etmez.() identityHashCode hiç değişecek mi?

Genellikle varsayılan uygulamaObject.hashCode()bellekte nesnenin tahsis adresi (zorunlu değil ama . bazı fonksiyonudur ^em>İDEA). VM bellek, neden nesneler şant verilen tarafından döndürülen değeri yokSystem.identityHashCode()hiç bir nesnenin ömrü boyunca değişim?

Eğer bir "one-shot" hesaplama (nesne hashCode hesaplanan bir kez ve saklanmış nesneyi başlık falan), o zaman demek mümkün için iki nesne aynı identityHashCode (Eğer onlar ne olacak ilk ayrılan aynı adreste bellek)?

CEVAP
30 HAZİRAN 2009, Salı


Nesne başlığındaki değeri kaydetmek Modern Jvm'ler. Bu değer genellikle en az (bazen gibi düşük bir düzine döngüleri) zaman nesne ayırma harcanan tutmak amacıyla ilk kullanımı üzerinden hesaplanır inanıyorum. Ortak Sun JVM kimlik karma kodu her zaman tüm nesneler için 1 böylece derlenmiş olabilir.

Birden çok nesne kodu karma aynı kimliğe sahip olabilir. Karma kodlar doğasıdır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Eric Anthony

    Eric Anthony

    13 AĞUSTOS 2011
  • pendrop gaming

    pendrop gami

    4 ŞUBAT 2013
  • Trulia

    Trulia

    29 Kasım 2006