CodeBlanks Logo Icon CodeBlanks

implements

implements ile sözleşme uygulmayı öğrenirsin.

implements ile uygulama

Bir sınıf implements anahtar kelimesiyle bir interface'i uygular. Sınıf, interface içindeki tüm metotları yazmak zorundadır; aksi halde derleme hatası alırsın.

Örnek: class Circle implements Drawable { public void draw() { ... } }. Burada Circle sözleşmeyi yerine getirir; draw metodunu gövdesiyle yazar. implements kelimesi sınıftan sonra, interface adından önce gelir. Uygulanan metot public olmalıdır; çünkü interface metotları örtük olarak public'tir. Bu mekanizma, farklı sınıfların aynı arayüzü paylaşmasını sağlar.

Override zorunluluğu

Bir interface'i uygulayan sınıf, tüm metotlarını yazmazsa derleme hatası alır. Java, sözleşmenin tam olarak yerine getirilmesini ister. Bu, eksik uygulamanın fark edilmesini sağlar.

Örnek: interface Speaker { void speak(String msg); void greet(); } tanımladıysan, uygulayan sınıf hem speak hem greet metodunu yazmalıdır. Birini unutsan derleyici 'Circle is not abstract and does not override the abstract method greet' benzeri bir hata verir. @Override notasyonu metot üstüne eklenir; yanlış imza yazarsan uyarı verir. Bu denetim, kodun sözleşmeye uygun kalmasını sağlar.

Uygulama Speaker interface'ini uygula

Speaker adında bir interface tanımla; içine void speak(String msg) imzasını ekle. Sonra class Person implements Speaker yaz; public void speak(String msg) metodunu gövdesiyle yaz ve içine System.out.println("Konuşuyor: " + msg); koy. main içinde new Person().speak("Merhaba") çağır.

Başlangıç kodu

Main.java
// Speaker interface'ini tanımla
// Person implements Speaker yaz
// main'de new Person().speak("Merhaba") çağır

Örnek çözüm

Main.java
interface Speaker {
    void speak(String msg);
}
class Person implements Speaker {
    public void speak(String msg) {
        System.out.println("Konuşuyor: " + msg);
    }
}
class Main {
    public static void main(String[] args) {
        new Person().speak("Merhaba");
    }
}

Beklenen çıktı

Konuşuyor: Merhaba

Soru ve cevaplar

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

1 Uygulama parçalarını eşle

Kavram Anlamı
implements Uygulama kelimesi
public void draw() Yazılan metot
Circle Uygulayan sınıf
Drawable Uygulanan interface

2 Bir sınıf interface'in bir metodunu yazmazsa ne olur?

  • Uyarı verir, derlenir
  • Derleme hatası verir Doğru cevap
  • Çalışma anında hata verir
  • Metot otomatik eklenir

Açıklama: Java tüm metotların yazılmasını ister.

3 implements satırını tamamla

Soru
class Square ____ Drawable {
    public void draw() { }
}
Cevap
class Square implements Drawable {
    public void draw() { }
}

Açıklama: implements kelimesi interface uygular.

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