Java'da @Override annotatsiyası, bir metodun üzerine yazılıp, bu metodun ebeveyn sınıftaki bir metodu ezdiğini belirtmek için kullanılır. Bu, çok önemli bir kalite kontrol mekanizmasıdır, çünkü Java, @Override annotatsiyası altındaki bir metodu, ebeveyn sınıfta karşılığı olmayan bir metoda uyarı verir veya hata verir.
Ebeveyn sınıfımız Hayvan ve alt sınıfımız Kedi olsun. Hayvan sınıfındaki sesCikar metodunun, Kedi sınıfında ezildiğini belirtelim.
class Hayvan {
void sesCikar() {
System.out.println("Hayvan sesi");
}
}
class Kedi extends Hayvan {
@Override
void sesCikar() {
System.out.println("Miyav");
}
}
public class Main {
public static void main(String[] args) {
Hayvan myKedi = new Kedi();
myKedi.sesCikar(); // Output: Miyav
}
}
@Override annotatsiyası, Java'daki alt sınıfların, ebeveyn sınıflardaki metotları bilinçli olarak ezip ezmediğini kontrol etmek için çok önemli bir araçtır. Aynı zamanda kodun okunabilirliğini ve bakımını da kolaylaştırır. Eğer bir metodu ezmeyi planlıyorsanız, daima @Override annotatsiyasını kullanmayı unutmayın. Bu sayede, eğer ebeveyn sınıftaki metodu yanlışlıkla silerseniz veya adını değiştirirseniz, derleyici size hata veya uyarı mesajı verecektir. Bu, hataları erken yakalamanıza ve düzeltmenize yardımcı olur.