Sobes.tech
Junior — Middle

Java'da equals yöntemi iki nesneyi nasıl karşılaştırır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Java'da equals metodu, iki nesnenin anlamlı eşitliğini karşılaştırmak için kullanılır. Varsayılan olarak, eğer geçersiz kılınmamışsa, referansları karşılaştırır (yani, nesnelerin aynı örneğe işaret edip etmediğini kontrol eder).

equals metodunu geçersiz kıldığınızda, genellikle nesnelerin içeriğini, örneğin alan değerlerini karşılaştırırsınız.

Tipik bir equals uygulaması şunları içerir:

  • Referans eşitliği kontrolü (this == obj)
  • null ve sınıf uyumluluğu kontrolü
  • Nesnelerin anlamlı alanlarının karşılaştırılması

Örnek:

@Override
public boolean equals(Object obj) {
    if (this == obj) return true;
    if (obj == null || getClass() != obj.getClass()) return false;
    MyClass other = (MyClass) obj;
    return Objects.equals(field1, other.field1) && field2 == other.field2;
}

Ayrıca, equals geçersiz kılındığında, bu metodla uyumlu olması için hashCode metodunu da geçersiz kılmak önemlidir.