İLERİ PROGRAMLAMA Dersi Java’da Soyut Sınıflar ve Arayüzler soru detayı:

PAYLAŞ:

SORU:

Aşağıda verlen arayüz örneğinde hangi metodlar tanımlanmıştır?

/* Kus.java */

public abstract class Kus {
} public abstract void turGoster();

/* Karga.java */

public class Karga extends Kus { public void turGoster() {

} } System.out.println(“Tür = Karga”); /* Serce.java */

public class Serce extends Kus { public void turGoster() {

System.out.println(“Tür = Serçe”);

   }

}


CEVAP:

Bu sınıfların tamamının kullanımını bir uygulama içerisinde görebilmek için ise aşağıda KusUygulamasi isimli bir sınıf bulunmaktadır. KusUygulamasi sınıfı içerisinde Karga ve Serce türündeki nesneler oluşturulmuş ve bu nesnelere ait turGoster metodu çağrılmıştır. Bu metot, Kus sınıfı içerisinde bir soyut metot olarak tanımlanmıştır. Bu sebepten dolayı, Karga ve Serce sınıfları içerisinde bu soyut metodun içeriğinin tanımlandığını görmekteyiz. Ayrıca, KusUygulamasi sınıfı içerisindeki son iki satırın yorum satırı şeklinde olduğunu görmekteyiz. Bu satırlar soyut sınıf olan Kus sınıfı türünde bir nesne oluşturulamaya- cağını göstermek amaçlıdır. Eğer bu iki satır, yorum satırı olmaktan çıkarılıp aktif hâle getirilirse derleyici hatası ile karşılaşılacak ve program çalıştırılamayacaktır.