Blogger tarafından desteklenmektedir.

Java  -  Interface

Programlama öğrenim sürecimizde yine bir kavramla karşı karşıyayız. "Interface", nâmı-diğer "Arayüz."



Interface, programlamada soyutlama elde etme yöntemlerinden biridir. Soyutlama dediğimiz de ayrıntıları gizleme, sadece temel bilgiyi gösterme işlemi olarak düşünülebilir. Örneğin elimizdeki kumandanın düğmesine basıp televizyonu açabiliriz ama tek bildiğimiz düğmeye basınca televizyonun açılması gerektiğidir. Bizim için arka planda gerçekleşen işlemler; TV ile kumanda arası sinyal alış-verişi ve TV yazılımının içinde olup bitenler tamamen soyuttur. Düğmeye basınca arka planda ne gibi işlemler olduğunu bilmeyiz. Yazılımda da interface olarak oluşturduğumuz sınıflar, %100 soyut sınıflardır. İçlerinde metodlar barındırırlar fakat metodlarının yapacağı işlemleri barındırmazlar çünkü interface metodlarının gövdesi yoktur. Interfaceler, kendisini uygulayan (implements) diğer sınıflara mutlak suretle barındırmaları gereken metodların neler olduğunu söyleyen bir şablondur.

Javada bir interface, standart bir Java sınıfı gibi tanımlanır. Tek fark class yerine interface yazılmasıdır. Bir de yapılması zorunlu olmasa da genel kullanım olarak interface isimleri "I" harfi ile başlatılır.

public class OrnekSınıf {
    //sınıf kodları
}
 
public interface IOrnekInterface {
    //gövdesiz metodlar
    void metod1();
}

Interface içerisindeki metodların gövdesi olmaz.

public interface IOrnekInterfaceIki {

    String metod2();

    int metod3();

}

Javada tanımlanmış bir sınıfa interface uygulanırken implements anahtar kelimesi kullanılır ve her sınıf, kendisine tanımlanan interfacelerin tüm metodlarını eksiksiz ve gövdeli olarak içermek zorundadır.

public class OrnekSınıf implements IOrnekInterface { 

    public void metod1(){

        //metod gövdesi.

    }

}

Javada bir sınıfa birden fazla interface, aralarına virgül koymak suretiyle tanımlanabilir.

public class OrnekSınıf implements IOrnekInterface, IOrnekInterfaceIki{ 

    public void metod1(){

        //metod gövdesi.

    }

    public String metod2(){

        //metod gövdesi.

        return "metin";

    }

    public int metod3(){

        //metod gövdesi.

        return 0;

    }

}

Javada tanımlanmış bir interface sınıfından new anahtar kelimesiyle interface nesnesi oluşturulamaz fakat referans tutucu özelliğe sahip olduklarından, tanımlandıkları sınıfların nesneleri oluşturulabilir.

IOrnekInterface sinifNesnesi = new OrnekSinif();

Programlamaya yeni başlayanlara yardımcı olacağını umduğum bu yayın için eksik veya hatalı gördüğünüz yerler olursa yorum bırakmaktan çekinmeyin lütfen.

Kodunuz bol olsun 😉







Hiç yorum yok