Derleyici denetiminden yararlanmak için her zaman Geçersiz Kılma ek açıklamasını kullanmalısınız. Ancak, Java Compiler 1.5'in arayüz yöntemlerini geçersiz kılarken bu ek açıklamaya izin vermeyeceğini unutmayın. Sadece sınıf yöntemlerini geçersiz kılmak için kullanabilirsiniz (soyut veya değil).
Eclipse olarak Java ID çalışma zamanı veya daha üstü ile yapılandırılmış bazı IDE'ler, Java 1.5 ile uyumluluğu korurlar ve @override kullanımına yukarıda açıklandığı gibi izin vermezler. Bu davranışı önlemek için aşağıdakilere gitmelisiniz: Proje Özellikleri -> Java Derleyici -> “Projeye Özgü Ayarları Etkinleştir” -> “Derleyici Uyumluluk Düzeyi” = 6.0 veya üstünü seçin.
Tabanın bir arabirim veya sınıf olması durumunda, bağımsız olarak bir yöntemi geçersiz kıldığımda bu ek açıklamayı kullanmayı seviyorum.
Bu, bir olay işleyiciyi geçersiz kıldığınızı ve daha sonra hiçbir şey görmediğinizi düşündüğünüz gibi bazı tipik hatalardan kaçınmanıza yardımcı olur. Bazı kullanıcı arayüzü bileşenlerine bir olay dinleyicisi eklemek istediğinizi düşünün:
someUIComponent.addMouseListener(new MouseAdapter(){
public void mouseEntered() {
...do something...
}
});
Yukarıdaki kod derlenir ve çalıştırılır, ancak fareyi someUIComponent içinde hareket ettirirseniz “bir şeyler yap” kodu çalıştırmayı not eder, çünkü aslında temel yöntemi geçersiz kılmazsınız mouseEntered(MouseEvent ev)
. Sadece yeni bir parametresiz yöntem oluşturursunuz mouseEntered()
. Bu kod yerine, @Override
ek açıklamayı kullandıysanız derleme hatası gördünüz ve olay işleyicinizin neden çalışmadığını düşünmek için zaman kaybetmediniz.