CodeBlanks Logo Icon CodeBlanks

interface

interface ile sözleşme tanımlamayı öğrenirsin.

interface nedir?

Bir interface, sınıfların uygulayacağı metotların sözleşmesini tanımlar. İçinde metot imzaları bulunur; gövde yoktur. interface anahtar kelimesiyle başlar.

Örnek: interface Drawable { void draw(); }. Burada Drawable bir sözleşmedir; draw metodu yalnızca imzasıyla bildirilir. Bir sınıf bu sözleşmeyi uyguladığında draw metodunu yazmak zorundadır. Interface, ne yapılması gerektiğini söyler; nasıl yapılacağını sınıfa bırakır. Bu, farklı sınıfların ortak bir davranışı paylaşmasını sağlar.

Interface içinde metot imzası

Interface içindeki metotların gövdesi yoktur. Yalnızca imza yazılır: dönüş tipi, isim ve parametreler. Noktalı virgül ile biter.

Örnek: interface Speaker { void speak(String msg); }. Burada speak metodunun dönüş tipi void, parametresi String msg'tir. Gövde yok; yalnızca sözleşme. Uygulayan sınıf bu metodu kendi gövdesiyle yazar. public yazmasan bile interface metotları örtük olarak public olur. Bu, sözleşmenin her zaman açık olması anlamına gelir.

Uygulama Drawable interface'ini tanımla

Drawable adında bir interface tanımla. İçine void draw() metodu imzasını ekle. Sonra class Circle implements Drawable yaz; public void draw() metodunu gövdesiyle yaz ve içine System.out.println("Daire çiziliyor"); koy. main içinde new Circle().draw() çağır.

Başlangıç kodu

Main.java
// Drawable interface'ini tanımla
// Circle implements Drawable yaz
// main'de new Circle().draw() çağır

Örnek çözüm

Main.java
interface Drawable {
    void draw();
}
class Circle implements Drawable {
    public void draw() {
        System.out.println("Daire çiziliyor");
    }
}
class Main {
    public static void main(String[] args) {
        new Circle().draw();
    }
}

Beklenen çıktı

Daire çiziliyor

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bir interface hangi anahtar kelimeyle tanımlanır?

  • interface Doğru cevap
  • class
  • contract
  • abstract

Açıklama: interface anahtar kelimesi bir sözleşme tanımlar.

2 interface tanımını tamamla

Soru
interface ____ {
    void draw();
}
Cevap
interface Drawable {
    void draw();
}

Açıklama: Drawable interface adıdır.

3 Interface bölümlerini eşle

Kavram Anlamı
interface Sözleşme kelimesi
void draw() Metot imzası
Drawable Interface adı
; İmza sonu

Orta seviye bölümündeki tüm dersler