SORU
14 Kasım 2010, Pazar


Nasıl varsayılan .eşittir .hashCode derslerim için çalışacak?

Benim sınıf arkadaşım var

public class MyObj { /* ... */ }

Bazı özellikler ve yöntemler vardır. , HashCode uygulamak eşit DEĞİLDİR uygulamıyor.

Biz hashCode ve equals çağrı sonra, varsayılan uygulamaları nelerdir? Nesne sınıf? Ve onlar nelerdir? Varsayılan nasıl çalışır eşittir? Varsayılan nasıl hashCode çalışacak ve getirisi ne olacak? == sadece onlar kolay yani aynı nesne için referans, ama eşit ne kontrol eder() ve hashCode() metotları?

CEVAP
14 Kasım 2010, Pazar


Evet, varsayılan uygulama Nesne (genellikle; ve/veya eşittir hashCode yeniden bir sınıfından, o zaman bu uygulama yerine kullanacağınız konuşma).

doc:

eşittir:

Sınıf Nesne uygular için equals yöntemi en nesneleri mümkün denklik ayrımcılık; boş olmayan herhangi bir referans değerleri için x ve y, bu yöntem döndürür gerçek ve x ve y aynı nesne için x == y değeri true () bakın.

hashCode:

Oldukça pratik olduğu kadar, hashCode metodu sınıf Nesnesi tarafından tanımlanan dönüş farklı nesneler için farklı tamsayı yapar. (Bu genellikle bir tamsayı nesnesinin iç Adres dönüştürerek uygulanır, ancak bu uygulama tekniği Java programlama dili gerekli değildir.)

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Marques Brownlee

    Marques Brow

    21 Mart 2008
  • MovieZoneET

    MovieZoneET

    22 Aralık 2009
  • The Dubstep FX

    The Dubstep

    5 Mart 2011