Java Interface (Arayüz) Nedir? – Java Dersleri

0
779
Java Interface (Arayüz) Nedir?
Java Interface (Arayüz) Nedir?

Daha önce öğrendiğimiz gibi, nesneler ortaya çıkardıkları metotlar sayesinde dış dünya ile etkileşimlerini tanımlar. Metotlar dış dünya ile nesnenin arayüzünü (interface) oluşturur; örneğin, televizyon setinizin önündeki butonlar siz ve onun plastik kaplamasının diğer tarafındaki elektrik kabloları arasında arayüzdür. Televizyonu açmak ve kapatmak için “güç” tuşuna basabilirsiniz.

Interface’in en yaygın hali, bir interface, boş gövdelerle birlikte ilgili metotların bir grubudur. Bir bisikletin davranışı, bir interface (arayüz) gibi belirtildiyse, aşağıdaki gibi görünür;

interface Bicycle {

    //  wheel revolutions per minute
    void changeCadence(int newValue);

    void changeGear(int newValue);

    void speedUp(int increment);

    void applyBrakes(int decrement);
}

Bu interface’i uygulamak için, sınıfınızın adı değişecekti (örneğin, ACMEBicycle gibi belirli bir bisiklet markasına) ve class (sınıf) tanımlamasında “implements” anahtar kelimesini kullanırsınız.

class ACMEBicycle implements Bicycle {

    int cadence = 0;
    int speed = 0;
    int gear = 1;

   // The compiler will now require that methods
   // changeCadence, changeGear, speedUp, and applyBrakes
   // all be implemented. Compilation will fail if those
   // methods are missing from this class.
//Derleyici şimdi changeCadence, changeGear, speedUp, and applyBrakes metotlarının
//uygulanmasını zorunlu tutacaktır. Eğer şu metotlar, bu sınıftan eksikse, derleyici başarız olur. 
    void changeCadence(int newValue) {
         cadence = newValue;
    }

    void changeGear(int newValue) {
         gear = newValue;
    }

    void speedUp(int increment) {
         speed = speed + increment;   
    }

    void applyBrakes(int decrement) {
         speed = speed - decrement;
    }

    void printStates() {
         System.out.println("cadence:" +
             cadence + " speed:" + 
             speed + " gear:" + gear);
    }
}

Bir interface’ın uygulanması, bir sınıfın sağlamayı söz verdiği davranış hakkında daha düzgün / kurallara göre olmasını sağlar. Interfaceler, sınıf ve dış dünya arasında bir anlaşma oluşturur ve bu anlaşma derleyici tarafından inşa zamanında zorla uygulanır. Sınıfınız bir interface’i uygulamayı talep ederse,sınıf başarıyla derlenmeden önce bu interface tarafından tanımlanmış bütün metotlar sınıfın kaynak kodunda görünmeli.

Not: Aslında ACMEBicycle sınıfını derlemek için, uygulanmış interface metotlarının başına “public” anahtar kelimesin eklenmeye ihtiyacı vardır. Gelecek derslerde bu kısımlara detaylıca değinmeye çalışacağız.

Bu yazı Oracle Java Dökümanı kullanılarak İngilizceden Türkçeye çevrilmiştir. Sadece kaynak göstererek kullanabilirsiniz.

Çeviri Yapılan Bölüm Linki

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz