Java interface (Arayüz)

  • Interface yani arayüz de aslında abstraction yani soyutlama görevi gören bir sınıf çeşididir, ancak abstract (soyut) sınıftan farkı tamamen soyut olmasıdır.
  • Bildiğimiz üzere soyut sınıflarda hem soyut hem de soyut olmayan metodlar tanımlanabiliyordu fakat interface yani arayüzde soyut olmayan metod tanımlamak mümkün değildir, her şey soyuttur.
  • Abstract sınıfın aksine interface sınıflardan kalıtılan sınıflar implements anahtar kelimesi ile interface sınıfa bağlanırlar.
    • Bunlarda da aynen abstract sınıfta olduğu gibi interface türündeki sınıftan kalıtılan sınıfların içinde, interface in içinde bulunan tüm soyut metodlar override edilmelidir.
public interface çalışan{
abstract void çalış();
public void konuş();
}

Doğru:

class memur implements çalışan{
public void çalış(){
System.out.println(«Çalışan çalıştı»);
}
public void konuş(){
System.out.println(«Merhaba ben çalışan»);
}
}

Doğru:

class memur implements çalışan{
public abstract void çalış;
public void konuş(){
System.out.println(«Merhaba ben çalışan»);
}
}
  • Görüldüğü üzere interface sınıftan kalıtılan normal sınıf interface sınıfa implements kelimesi ile bağlanıyor ve interface sınıfın tüm soyut metodlarını alıyor ve bu soyut metodların artık gövdesi olmak zorunda.
  • Ancak interface sınıftan yine bir interface sınıf kalıtılıyorsa bu kalıtım yine extends kelimesi ile yapılır ve kalıtılan sınıfın içindeki metodlar yine gövdesiz metod olmak durumundadır çünkü anlatıldığı üzere interface sınıfta gövdesi olan metod olmaz yani metodlar soyut olmalıdır.

Ramazan Bıyıkcı

Merhaba! Ben Ramazan. Medya Planlama ve Dijital Pazarlama Uzmanıyım. Çağımız medya çağı, hayatımızın bir çok alanı online olmuş durumda. Bu süreçte bende marka ve kurumların dijital ihtiyaçlarını karşılayacak şekilde planlamalar yapmaktayım. Bir çok markanın dijital pazarlama alanındaki online faaliyetlerini sürdürmekteyim. Farklı uzmanlık alanlarında çalışarak halen kendimi sürekli yenileyerek geliştirmekteyim.

Yorum Yap

Ramazan Bıyıkcı

"Merhaba! Ben Ramazan. Medya Planlama ve Dijital Pazarlama Uzmanıyım. Çağımız medya çağı, hayatımızın bir çok alanı online olmuş durumda. Bu süreçte bende markaların dijital ihtiyaçlarını karşılayacak şekilde planlamalar yaparak ve bir çok markanın dijital pazarlama alanındaki faaliyetlerini sürdürmekteyim. Farklı görevler ve farklı uzmanlık alanlarında çalışarak halen kendimi sürekli yenileyerek geliştirmekteyim."