Java'da geçersiz kılma eşittir yönteminin kullanımı nedir?
Java'da geçersiz kılma eşittir yönteminin kullanımı nedir?

Video: Java'da geçersiz kılma eşittir yönteminin kullanımı nedir?

Video: Java'da geçersiz kılma eşittir yönteminin kullanımı nedir?
Video: Java Dersleri #95 - OOP - Threading ve Multithreading Kullanımı 2024, Nisan
Anonim

Geçersiz kılma eşittir ve hashCode içinde Java

eşittir () yöntem NS kullanılmış hashCode iken nesneleri eşitlik açısından karşılaştırmak için kullanılmış o nesneye karşılık gelen bir tamsayı kodu oluşturmak için

Burada, Java'da eşittir yönteminin kullanımı nedir?

NS eşittir () yöntem iki nesneyi eşitlik için karşılaştırır ve eğer öyleyse true değerini döndürür eşit . NS eşittir () yöntem Object sınıfında sağlanan kullanır iki nesnenin olup olmadığını belirlemek için kimlik operatörü (==) eşit . İlkel veri türleri için bu doğru sonucu verir.

Ek olarak, Java'da eşittir yöntemini nasıl geçersiz kılarsınız? Yukarıdaki kod sınıfı parçasında, Kişi, aşağıdaki adım adım yaklaşımı benimseyen geçersiz kılınmış bir equals() yöntemine sahiptir:

  1. Bu nesneye yapılan başvuru, bağımsız değişken nesnesine yapılan başvuruyla aynıysa, true değerini döndürün.
  2. Bağımsız değişken null ise, false döndürün.
  3. Nesneler aynı sınıftan değilse false döndürün.

Buna göre, neden Java'da eşittir yöntemini geçersiz kılmamız gerekiyor?

Dize sınıfı geçersiz kılar NS eşittir yöntemi Object sınıfından miras aldı ve iki String nesnesini karakter karakter karşılaştırmak için mantık uyguladı. nedeni eşittir yöntemi Object sınıfında referans eşitliği, başka bir şeyin nasıl yapılacağını bilmemesidir.

Java'da hashCode ve equals yöntemini geçersiz kılmanın kullanımı nedir?

bir sınıf geçersiz kılınırsa eşittir , o olmalı hashCode'u geçersiz kıl . ikisi de olduğunda geçersiz kılınmış , eşittir ve hash kodu zorunlu kullanmak aynı alan kümesi. eğer iki nesne eşit , sonra onların hash kodu değerler olmalıdır eşit ilave olarak. nesne değişmez ise, o zaman hash kodu önbelleğe alma ve tembel başlatma için bir adaydır.

Önerilen: