Nasıl varsayılan .eşittir .hashCode derslerim için çalışacak? | Netgez.com
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

  • Electro Posé

    Electro PosÃ

    21 ÅžUBAT 2013
  • HouseholdHacker

    HouseholdHac

    6 Kasım 2007
  • wafflepwn

    wafflepwn

    14 AÄžUSTOS 2008