Yöntemlere her zaman @Override
Varsa, .
JDK 5'te bu, üst sınıfların geçersiz kılma yöntemleri, JDK 6 ve 7'de üst sınıfların geçersiz kılma yöntemleri ve arabirimlerin uygulama yöntemleri anlamına gelir. Bunun nedeni, daha önce de belirtildiği gibi, derleyicinin bir yöntemi geçersiz kıldığınızı (veya uyguladığınızı) ancak aslında yeni bir yöntem (farklı imza) tanımladığınız hataları yakalamasına izin vermesidir.
equals(Object)
Vsequals(YourObject)
, örneğin noktasında standart bir durum olmakla birlikte, aynı argüman arayüz uygulamaları için yapılabilir.
Arabirim yöntemlerinin uygulanmasına açıklama eklemenin zorunlu olmasının nedeninin JDK 5'in bunu bir derleme hatası olarak işaretlemesi olduğunu düşünürüm. JDK 6 bu ek açıklamayı zorunlu hale getirirse geriye dönük uyumluluğu bozar.
Eclipse kullanıcısı değilim, diğer IDE'lerde (IntelliJ), @Override
ek açıklama, yalnızca proje JDK 6+ projesi olarak ayarlanmışsa arabirim yöntemleri uygulanırken eklenir. Eclipse'in benzer olduğunu düşünürdüm.
Ancak, bu kullanım için farklı bir ek açıklama, belki bir @Implements
ek açıklama görmeyi tercih ederdim .